@bigbinary/neeto-payments-frontend 6.2.0 → 6.3.0

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 (344) hide show
  1. package/app/javascript/src/translations/en.json +7 -0
  2. package/dist/AccountsDashboard.js +7 -6
  3. package/dist/AccountsDashboard.js.map +1 -1
  4. package/dist/AdminCancelRecurringPaymentButton.js +4 -17
  5. package/dist/AdminCancelRecurringPaymentButton.js.map +1 -1
  6. package/dist/CashPaymentButton.js +2 -2
  7. package/dist/ConfirmCashPaymentButton.js +2 -2
  8. package/dist/CopyButtonWrapper-B53v2TyQ.js +22 -0
  9. package/dist/CopyButtonWrapper-B53v2TyQ.js.map +1 -0
  10. package/dist/CopyButtonWrapper-CbzDq6Cq.js +22 -0
  11. package/dist/CopyButtonWrapper-CbzDq6Cq.js.map +1 -0
  12. package/dist/CustomerCancelRecurringPaymentForm.js +7 -27
  13. package/dist/CustomerCancelRecurringPaymentForm.js.map +1 -1
  14. package/dist/{ExportModal-DGOx1b6l.js → ExportModal-Bun3pMGn.js} +3 -17
  15. package/dist/ExportModal-Bun3pMGn.js.map +1 -0
  16. package/dist/ExportModal-X-AJPdkc.js +105 -0
  17. package/dist/ExportModal-X-AJPdkc.js.map +1 -0
  18. package/dist/ManualUpiConnect.js +6 -37
  19. package/dist/ManualUpiConnect.js.map +1 -1
  20. package/dist/ManualUpiPayment.js +2 -2
  21. package/dist/ManualUpiPaymentConfirmButton.js +2 -2
  22. package/dist/ManualUpiPaymentRejectButton.js +2 -2
  23. package/dist/PaymentsDashboard.js +10 -20
  24. package/dist/PaymentsDashboard.js.map +1 -1
  25. package/dist/PayoutsDashboard.js +7 -6
  26. package/dist/PayoutsDashboard.js.map +1 -1
  27. package/dist/PayoutsPage.js +6 -22
  28. package/dist/PayoutsPage.js.map +1 -1
  29. package/dist/RazorpayConnect.js +2 -2
  30. package/dist/RazorpayLinkedAccountForm.js +5 -24
  31. package/dist/RazorpayLinkedAccountForm.js.map +1 -1
  32. package/dist/RazorpayPaymentButton.js +6 -4
  33. package/dist/RazorpayPaymentButton.js.map +1 -1
  34. package/dist/RazorpayWebsiteNotice.js +70 -0
  35. package/dist/RazorpayWebsiteNotice.js.map +1 -0
  36. package/dist/RecurringPaymentSettings.js +7 -25
  37. package/dist/RecurringPaymentSettings.js.map +1 -1
  38. package/dist/RefundsDashboard.js +10 -20
  39. package/dist/RefundsDashboard.js.map +1 -1
  40. package/dist/SplitTransfersDashboard.js +10 -35
  41. package/dist/SplitTransfersDashboard.js.map +1 -1
  42. package/dist/StripeCheckoutSetting.js +7 -25
  43. package/dist/StripeCheckoutSetting.js.map +1 -1
  44. package/dist/StripeConnect.js +7 -16
  45. package/dist/StripeConnect.js.map +1 -1
  46. package/dist/StripeManage.js +2 -1
  47. package/dist/StripeManage.js.map +1 -1
  48. package/dist/TaxesDashboard.js +7 -57
  49. package/dist/TaxesDashboard.js.map +1 -1
  50. package/dist/buildStripeTransactionLink.js +1 -1
  51. package/dist/cjs/AccountsDashboard.js +7 -6
  52. package/dist/cjs/AccountsDashboard.js.map +1 -1
  53. package/dist/cjs/AdminCancelRecurringPaymentButton.js +5 -18
  54. package/dist/cjs/AdminCancelRecurringPaymentButton.js.map +1 -1
  55. package/dist/cjs/CashPaymentButton.js +2 -2
  56. package/dist/cjs/ConfirmCashPaymentButton.js +2 -2
  57. package/dist/cjs/CopyButtonWrapper-CXzqqYIp.js +24 -0
  58. package/dist/cjs/CopyButtonWrapper-CXzqqYIp.js.map +1 -0
  59. package/dist/cjs/CopyButtonWrapper-CbcAHUmk.js +24 -0
  60. package/dist/cjs/CopyButtonWrapper-CbcAHUmk.js.map +1 -0
  61. package/dist/cjs/CustomerCancelRecurringPaymentForm.js +9 -29
  62. package/dist/cjs/CustomerCancelRecurringPaymentForm.js.map +1 -1
  63. package/dist/cjs/ExportModal-C7_QKb9q.js +107 -0
  64. package/dist/cjs/ExportModal-C7_QKb9q.js.map +1 -0
  65. package/dist/cjs/{ExportModal-CJlEDIWM.js → ExportModal-DwLOAhIs.js} +4 -18
  66. package/dist/cjs/ExportModal-DwLOAhIs.js.map +1 -0
  67. package/dist/cjs/ManualUpiConnect.js +9 -40
  68. package/dist/cjs/ManualUpiConnect.js.map +1 -1
  69. package/dist/cjs/ManualUpiPayment.js +2 -2
  70. package/dist/cjs/ManualUpiPaymentConfirmButton.js +2 -2
  71. package/dist/cjs/ManualUpiPaymentRejectButton.js +2 -2
  72. package/dist/cjs/PaymentsDashboard.js +11 -21
  73. package/dist/cjs/PaymentsDashboard.js.map +1 -1
  74. package/dist/cjs/PayoutsDashboard.js +7 -6
  75. package/dist/cjs/PayoutsDashboard.js.map +1 -1
  76. package/dist/cjs/PayoutsPage.js +7 -23
  77. package/dist/cjs/PayoutsPage.js.map +1 -1
  78. package/dist/cjs/RazorpayConnect.js +2 -2
  79. package/dist/cjs/RazorpayLinkedAccountForm.js +7 -26
  80. package/dist/cjs/RazorpayLinkedAccountForm.js.map +1 -1
  81. package/dist/cjs/RazorpayPaymentButton.js +6 -4
  82. package/dist/cjs/RazorpayPaymentButton.js.map +1 -1
  83. package/dist/cjs/RazorpayWebsiteNotice.js +72 -0
  84. package/dist/cjs/RazorpayWebsiteNotice.js.map +1 -0
  85. package/dist/cjs/RecurringPaymentSettings.js +8 -26
  86. package/dist/cjs/RecurringPaymentSettings.js.map +1 -1
  87. package/dist/cjs/RefundsDashboard.js +11 -21
  88. package/dist/cjs/RefundsDashboard.js.map +1 -1
  89. package/dist/cjs/SplitTransfersDashboard.js +13 -38
  90. package/dist/cjs/SplitTransfersDashboard.js.map +1 -1
  91. package/dist/cjs/StripeCheckoutSetting.js +9 -27
  92. package/dist/cjs/StripeCheckoutSetting.js.map +1 -1
  93. package/dist/cjs/StripeConnect.js +7 -16
  94. package/dist/cjs/StripeConnect.js.map +1 -1
  95. package/dist/cjs/StripeManage.js +2 -1
  96. package/dist/cjs/StripeManage.js.map +1 -1
  97. package/dist/cjs/TaxesDashboard.js +10 -60
  98. package/dist/cjs/TaxesDashboard.js.map +1 -1
  99. package/dist/cjs/buildStripeTransactionLink.js +1 -1
  100. package/dist/cjs/constants.js +1 -1
  101. package/dist/{CopyButtonWrapper-DkI2F6Ty.js → cjs/copy-button-DdBSM5yi.js} +3 -20
  102. package/dist/cjs/copy-button-DdBSM5yi.js.map +1 -0
  103. package/dist/cjs/{dashboard-0e4qOr6Q.js → dashboard-BGW0_f30.js} +2 -2
  104. package/dist/cjs/{dashboard-0e4qOr6Q.js.map → dashboard-BGW0_f30.js.map} +1 -1
  105. package/dist/cjs/getAddressElementOptions.js +1 -1
  106. package/dist/cjs/getAmountInLargestCurrencyUnit.js +1 -1
  107. package/dist/cjs/getAmountInSmallestCurrencyUnit.js +1 -1
  108. package/dist/cjs/getAmountWithAppliedTax.js +1 -1
  109. package/dist/cjs/getFormattedAmount.js +1 -1
  110. package/dist/cjs/getFormattedDiscountedAmount.js +1 -1
  111. package/dist/cjs/getFormattedDiscountedPercentage.js +1 -1
  112. package/dist/cjs/getFormattedTaxAmount.js +1 -1
  113. package/dist/cjs/getFormattedTipAmount.js +1 -1
  114. package/dist/cjs/getQrCodeValue.js +1 -1
  115. package/dist/cjs/getTaxAmount.js +1 -1
  116. package/dist/cjs/getTipAmount.js +1 -1
  117. package/dist/cjs/hasAmountToPay.js +1 -1
  118. package/dist/cjs/{index-d81RoerD.js → index-CpEnC-Gq.js} +8 -8
  119. package/dist/cjs/index-CpEnC-Gq.js.map +1 -0
  120. package/dist/cjs/index-CsYH-ECo.js +21 -0
  121. package/dist/cjs/index-CsYH-ECo.js.map +1 -0
  122. package/dist/cjs/index.js +32 -16
  123. package/dist/cjs/index.js.map +1 -1
  124. package/dist/cjs/main-BnTRneCH.js +7 -0
  125. package/dist/cjs/main-BnTRneCH.js.map +1 -0
  126. package/dist/cjs/renderFunctions-DJ3I4O4j.js +73 -0
  127. package/dist/cjs/renderFunctions-DJ3I4O4j.js.map +1 -0
  128. package/dist/cjs/{renderFunctions-Bti0TEIP.js → renderFunctions-DW33daSm.js} +3 -3
  129. package/dist/cjs/{renderFunctions-Bti0TEIP.js.map → renderFunctions-DW33daSm.js.map} +1 -1
  130. package/dist/cjs/{useAccountsApi-DsrOzkcV.js → useAccountsApi-DaOq20gj.js} +2 -2
  131. package/dist/cjs/{useAccountsApi-DsrOzkcV.js.map → useAccountsApi-DaOq20gj.js.map} +1 -1
  132. package/dist/cjs/useBusinessTypesApi-D_td8mux.js +30 -0
  133. package/dist/cjs/useBusinessTypesApi-D_td8mux.js.map +1 -0
  134. package/dist/cjs/useCheckoutSettingsApi-fGVkfRBQ.js +31 -0
  135. package/dist/cjs/useCheckoutSettingsApi-fGVkfRBQ.js.map +1 -0
  136. package/dist/cjs/useCountriesApi-CWsN_NIT.js +19 -0
  137. package/dist/cjs/useCountriesApi-CWsN_NIT.js.map +1 -0
  138. package/dist/cjs/{useExportsApi-damWskqN.js → useExportsApi-CupgYUpS.js} +2 -2
  139. package/dist/cjs/{useExportsApi-damWskqN.js.map → useExportsApi-CupgYUpS.js.map} +1 -1
  140. package/dist/cjs/useExportsApi-rYuPpXWl.js +21 -0
  141. package/dist/cjs/useExportsApi-rYuPpXWl.js.map +1 -0
  142. package/dist/cjs/useFetchData-C85lubOx.js +24 -0
  143. package/dist/cjs/useFetchData-C85lubOx.js.map +1 -0
  144. package/dist/cjs/{useIntegrationsApi-Cdm9Q9F_.js → useIntegrationsApi-CNrrE2OH.js} +2 -2
  145. package/dist/cjs/{useIntegrationsApi-Cdm9Q9F_.js.map → useIntegrationsApi-CNrrE2OH.js.map} +1 -1
  146. package/dist/cjs/{usePaymentApi-DmaCm5ok.js → usePaymentApi-B198Hd_a.js} +2 -2
  147. package/dist/cjs/{usePaymentApi-DmaCm5ok.js.map → usePaymentApi-B198Hd_a.js.map} +1 -1
  148. package/dist/cjs/{usePaymentApi-tvigxwUS.js → usePaymentApi-CuL13mny.js} +2 -2
  149. package/dist/cjs/{usePaymentApi-tvigxwUS.js.map → usePaymentApi-CuL13mny.js.map} +1 -1
  150. package/dist/cjs/{usePaymentApi-CGzEYmcs.js → usePaymentApi-DZYqqfhc.js} +2 -2
  151. package/dist/cjs/{usePaymentApi-CGzEYmcs.js.map → usePaymentApi-DZYqqfhc.js.map} +1 -1
  152. package/dist/cjs/usePaymentsApi-ZomyqUIJ.js +22 -0
  153. package/dist/cjs/usePaymentsApi-ZomyqUIJ.js.map +1 -0
  154. package/dist/cjs/{usePlatformApi-D6ns278e.js → usePlatformApi-ByvYg8Y-.js} +2 -2
  155. package/dist/cjs/{usePlatformApi-D6ns278e.js.map → usePlatformApi-ByvYg8Y-.js.map} +1 -1
  156. package/dist/cjs/useRazorpayPayment.js +2 -2
  157. package/dist/cjs/useRecurringPaymentsApi-DQpypVjt.js +33 -0
  158. package/dist/cjs/useRecurringPaymentsApi-DQpypVjt.js.map +1 -0
  159. package/dist/cjs/useRecurringPaymentsApi-Dow6RjiT.js +22 -0
  160. package/dist/cjs/useRecurringPaymentsApi-Dow6RjiT.js.map +1 -0
  161. package/dist/cjs/useRecurringSettingsApi-CDA5wZnB.js +31 -0
  162. package/dist/cjs/useRecurringSettingsApi-CDA5wZnB.js.map +1 -0
  163. package/dist/cjs/useRefundsApi-enBsXWAk.js +22 -0
  164. package/dist/cjs/useRefundsApi-enBsXWAk.js.map +1 -0
  165. package/dist/cjs/useSplitTransfersApi-BcCKsPCE.js +40 -0
  166. package/dist/cjs/useSplitTransfersApi-BcCKsPCE.js.map +1 -0
  167. package/dist/cjs/useTaxesApi-BBinhUYT.js +65 -0
  168. package/dist/cjs/useTaxesApi-BBinhUYT.js.map +1 -0
  169. package/dist/cjs/useVpasApi-Ts1ivO7S.js +44 -0
  170. package/dist/cjs/useVpasApi-Ts1ivO7S.js.map +1 -0
  171. package/dist/cjs/v2/AccountsDashboard.js +477 -0
  172. package/dist/cjs/v2/AccountsDashboard.js.map +1 -0
  173. package/dist/cjs/v2/AdminCancelRecurringPaymentButton.js +54 -0
  174. package/dist/cjs/v2/AdminCancelRecurringPaymentButton.js.map +1 -0
  175. package/dist/cjs/v2/CashPaymentButton.js +60 -0
  176. package/dist/cjs/v2/CashPaymentButton.js.map +1 -0
  177. package/dist/cjs/v2/ConfirmCashPaymentButton.js +100 -0
  178. package/dist/cjs/v2/ConfirmCashPaymentButton.js.map +1 -0
  179. package/dist/cjs/v2/CustomerCancelRecurringPaymentForm.js +85 -0
  180. package/dist/cjs/v2/CustomerCancelRecurringPaymentForm.js.map +1 -0
  181. package/dist/cjs/v2/ManualUpiConnect.js +227 -0
  182. package/dist/cjs/v2/ManualUpiConnect.js.map +1 -0
  183. package/dist/cjs/v2/ManualUpiPayment.js +253 -0
  184. package/dist/cjs/v2/ManualUpiPayment.js.map +1 -0
  185. package/dist/cjs/v2/ManualUpiPaymentConfirmButton.js +172 -0
  186. package/dist/cjs/v2/ManualUpiPaymentConfirmButton.js.map +1 -0
  187. package/dist/cjs/v2/ManualUpiPaymentRejectButton.js +127 -0
  188. package/dist/cjs/v2/ManualUpiPaymentRejectButton.js.map +1 -0
  189. package/dist/cjs/v2/PaymentKindRestrictionAlert.js +33 -0
  190. package/dist/cjs/v2/PaymentKindRestrictionAlert.js.map +1 -0
  191. package/dist/cjs/v2/PaymentsDashboard.js +581 -0
  192. package/dist/cjs/v2/PaymentsDashboard.js.map +1 -0
  193. package/dist/cjs/v2/PayoutsDashboard.js +516 -0
  194. package/dist/cjs/v2/PayoutsDashboard.js.map +1 -0
  195. package/dist/cjs/v2/PayoutsPage.js +144 -0
  196. package/dist/cjs/v2/PayoutsPage.js.map +1 -0
  197. package/dist/cjs/v2/RazorpayConnect.js +117 -0
  198. package/dist/cjs/v2/RazorpayConnect.js.map +1 -0
  199. package/dist/cjs/v2/RazorpayLinkedAccountForm.js +174 -0
  200. package/dist/cjs/v2/RazorpayLinkedAccountForm.js.map +1 -0
  201. package/dist/cjs/v2/RazorpayPaymentButton.js +145 -0
  202. package/dist/cjs/v2/RazorpayPaymentButton.js.map +1 -0
  203. package/dist/cjs/v2/RecurringPaymentSettings.js +121 -0
  204. package/dist/cjs/v2/RecurringPaymentSettings.js.map +1 -0
  205. package/dist/cjs/v2/RefundsDashboard.js +492 -0
  206. package/dist/cjs/v2/RefundsDashboard.js.map +1 -0
  207. package/dist/cjs/v2/SplitTransfersDashboard.js +943 -0
  208. package/dist/cjs/v2/SplitTransfersDashboard.js.map +1 -0
  209. package/dist/cjs/v2/StripeCheckoutSetting.js +66 -0
  210. package/dist/cjs/v2/StripeCheckoutSetting.js.map +1 -0
  211. package/dist/cjs/v2/StripeConnect.js +384 -0
  212. package/dist/cjs/v2/StripeConnect.js.map +1 -0
  213. package/dist/cjs/v2/StripeManage.js +50 -0
  214. package/dist/cjs/v2/StripeManage.js.map +1 -0
  215. package/dist/cjs/v2/TaxesDashboard.js +338 -0
  216. package/dist/cjs/v2/TaxesDashboard.js.map +1 -0
  217. package/dist/cjs/v2/index.js +125 -0
  218. package/dist/cjs/v2/index.js.map +1 -0
  219. package/dist/constants.js +1 -1
  220. package/dist/{cjs/CopyButtonWrapper-DZ9rE5UR.js → copy-button-EhEBcNP9.js} +2 -24
  221. package/dist/copy-button-EhEBcNP9.js.map +1 -0
  222. package/dist/{dashboard-Bu-kKlqX.js → dashboard-Ba2uhKXD.js} +2 -2
  223. package/dist/{dashboard-Bu-kKlqX.js.map → dashboard-Ba2uhKXD.js.map} +1 -1
  224. package/dist/getAddressElementOptions.js +1 -1
  225. package/dist/getAmountInLargestCurrencyUnit.js +1 -1
  226. package/dist/getAmountInSmallestCurrencyUnit.js +1 -1
  227. package/dist/getAmountWithAppliedTax.js +1 -1
  228. package/dist/getFormattedAmount.js +1 -1
  229. package/dist/getFormattedDiscountedAmount.js +1 -1
  230. package/dist/getFormattedDiscountedPercentage.js +1 -1
  231. package/dist/getFormattedTaxAmount.js +1 -1
  232. package/dist/getFormattedTipAmount.js +1 -1
  233. package/dist/getQrCodeValue.js +1 -1
  234. package/dist/getTaxAmount.js +1 -1
  235. package/dist/getTipAmount.js +1 -1
  236. package/dist/hasAmountToPay.js +1 -1
  237. package/dist/index-CKJlawqs.js +19 -0
  238. package/dist/index-CKJlawqs.js.map +1 -0
  239. package/dist/{index-BFPr9LL_.js → index-CajHy3NQ.js} +9 -9
  240. package/dist/index-CajHy3NQ.js.map +1 -0
  241. package/dist/index.js +30 -17
  242. package/dist/index.js.map +1 -1
  243. package/dist/main-Bqi97Os6.js +5 -0
  244. package/dist/main-Bqi97Os6.js.map +1 -0
  245. package/dist/{renderFunctions-Cj94YzPn.js → renderFunctions-B9mVn_ag.js} +4 -4
  246. package/dist/{renderFunctions-Cj94YzPn.js.map → renderFunctions-B9mVn_ag.js.map} +1 -1
  247. package/dist/renderFunctions-SFUBbGqd.js +67 -0
  248. package/dist/renderFunctions-SFUBbGqd.js.map +1 -0
  249. package/dist/{useAccountsApi-BYO3jcvn.js → useAccountsApi-CZyJ4R8Z.js} +3 -3
  250. package/dist/{useAccountsApi-BYO3jcvn.js.map → useAccountsApi-CZyJ4R8Z.js.map} +1 -1
  251. package/dist/useBusinessTypesApi-CS2aPq7Y.js +27 -0
  252. package/dist/useBusinessTypesApi-CS2aPq7Y.js.map +1 -0
  253. package/dist/useCheckoutSettingsApi-D1ZvMA4B.js +28 -0
  254. package/dist/useCheckoutSettingsApi-D1ZvMA4B.js.map +1 -0
  255. package/dist/useCountriesApi-ClXgwNgC.js +17 -0
  256. package/dist/useCountriesApi-ClXgwNgC.js.map +1 -0
  257. package/dist/useExportsApi-C1wjoVYy.js +19 -0
  258. package/dist/useExportsApi-C1wjoVYy.js.map +1 -0
  259. package/dist/{useExportsApi-Kh-sIsaX.js → useExportsApi-DA6ThV9b.js} +2 -2
  260. package/dist/{useExportsApi-Kh-sIsaX.js.map → useExportsApi-DA6ThV9b.js.map} +1 -1
  261. package/dist/useFetchData-8LLdmA74.js +22 -0
  262. package/dist/useFetchData-8LLdmA74.js.map +1 -0
  263. package/dist/{useIntegrationsApi-4-kw1M93.js → useIntegrationsApi-BqU-lJql.js} +2 -2
  264. package/dist/{useIntegrationsApi-4-kw1M93.js.map → useIntegrationsApi-BqU-lJql.js.map} +1 -1
  265. package/dist/{usePaymentApi-DsXrGrJF.js → usePaymentApi-BzB3rzNe.js} +2 -2
  266. package/dist/{usePaymentApi-DsXrGrJF.js.map → usePaymentApi-BzB3rzNe.js.map} +1 -1
  267. package/dist/{usePaymentApi-D6FQUiYT.js → usePaymentApi-C8fRdHmK.js} +2 -2
  268. package/dist/{usePaymentApi-D6FQUiYT.js.map → usePaymentApi-C8fRdHmK.js.map} +1 -1
  269. package/dist/{usePaymentApi-BQyWVrBI.js → usePaymentApi-gvPmTOWg.js} +2 -2
  270. package/dist/{usePaymentApi-BQyWVrBI.js.map → usePaymentApi-gvPmTOWg.js.map} +1 -1
  271. package/dist/usePaymentsApi-C2xbgHmw.js +20 -0
  272. package/dist/usePaymentsApi-C2xbgHmw.js.map +1 -0
  273. package/dist/{usePlatformApi-CQY4MOWy.js → usePlatformApi-Dug1pxaH.js} +3 -3
  274. package/dist/{usePlatformApi-CQY4MOWy.js.map → usePlatformApi-Dug1pxaH.js.map} +1 -1
  275. package/dist/useRazorpayPayment.js +2 -2
  276. package/dist/useRecurringPaymentsApi-CkxjkZd2.js +30 -0
  277. package/dist/useRecurringPaymentsApi-CkxjkZd2.js.map +1 -0
  278. package/dist/useRecurringPaymentsApi-dbdBrh4V.js +20 -0
  279. package/dist/useRecurringPaymentsApi-dbdBrh4V.js.map +1 -0
  280. package/dist/useRecurringSettingsApi-B_kTDES9.js +28 -0
  281. package/dist/useRecurringSettingsApi-B_kTDES9.js.map +1 -0
  282. package/dist/useRefundsApi-DSMKTWIQ.js +20 -0
  283. package/dist/useRefundsApi-DSMKTWIQ.js.map +1 -0
  284. package/dist/useSplitTransfersApi-DlRs4wYh.js +36 -0
  285. package/dist/useSplitTransfersApi-DlRs4wYh.js.map +1 -0
  286. package/dist/useTaxesApi-BuPeVUxI.js +60 -0
  287. package/dist/useTaxesApi-BuPeVUxI.js.map +1 -0
  288. package/dist/useVpasApi-wicZ6o_z.js +40 -0
  289. package/dist/useVpasApi-wicZ6o_z.js.map +1 -0
  290. package/dist/v2/AccountsDashboard.js +475 -0
  291. package/dist/v2/AccountsDashboard.js.map +1 -0
  292. package/dist/v2/AdminCancelRecurringPaymentButton.js +52 -0
  293. package/dist/v2/AdminCancelRecurringPaymentButton.js.map +1 -0
  294. package/dist/v2/CashPaymentButton.js +58 -0
  295. package/dist/v2/CashPaymentButton.js.map +1 -0
  296. package/dist/v2/ConfirmCashPaymentButton.js +98 -0
  297. package/dist/v2/ConfirmCashPaymentButton.js.map +1 -0
  298. package/dist/v2/CustomerCancelRecurringPaymentForm.js +83 -0
  299. package/dist/v2/CustomerCancelRecurringPaymentForm.js.map +1 -0
  300. package/dist/v2/ManualUpiConnect.js +206 -0
  301. package/dist/v2/ManualUpiConnect.js.map +1 -0
  302. package/dist/v2/ManualUpiPayment.js +232 -0
  303. package/dist/v2/ManualUpiPayment.js.map +1 -0
  304. package/dist/v2/ManualUpiPaymentConfirmButton.js +151 -0
  305. package/dist/v2/ManualUpiPaymentConfirmButton.js.map +1 -0
  306. package/dist/v2/ManualUpiPaymentRejectButton.js +125 -0
  307. package/dist/v2/ManualUpiPaymentRejectButton.js.map +1 -0
  308. package/dist/v2/PaymentKindRestrictionAlert.js +31 -0
  309. package/dist/v2/PaymentKindRestrictionAlert.js.map +1 -0
  310. package/dist/v2/PaymentsDashboard.js +579 -0
  311. package/dist/v2/PaymentsDashboard.js.map +1 -0
  312. package/dist/v2/PayoutsDashboard.js +514 -0
  313. package/dist/v2/PayoutsDashboard.js.map +1 -0
  314. package/dist/v2/PayoutsPage.js +142 -0
  315. package/dist/v2/PayoutsPage.js.map +1 -0
  316. package/dist/v2/RazorpayConnect.js +115 -0
  317. package/dist/v2/RazorpayConnect.js.map +1 -0
  318. package/dist/v2/RazorpayLinkedAccountForm.js +172 -0
  319. package/dist/v2/RazorpayLinkedAccountForm.js.map +1 -0
  320. package/dist/v2/RazorpayPaymentButton.js +143 -0
  321. package/dist/v2/RazorpayPaymentButton.js.map +1 -0
  322. package/dist/v2/RecurringPaymentSettings.js +100 -0
  323. package/dist/v2/RecurringPaymentSettings.js.map +1 -0
  324. package/dist/v2/RefundsDashboard.js +490 -0
  325. package/dist/v2/RefundsDashboard.js.map +1 -0
  326. package/dist/v2/SplitTransfersDashboard.js +922 -0
  327. package/dist/v2/SplitTransfersDashboard.js.map +1 -0
  328. package/dist/v2/StripeCheckoutSetting.js +64 -0
  329. package/dist/v2/StripeCheckoutSetting.js.map +1 -0
  330. package/dist/v2/StripeConnect.js +363 -0
  331. package/dist/v2/StripeConnect.js.map +1 -0
  332. package/dist/v2/StripeManage.js +48 -0
  333. package/dist/v2/StripeManage.js.map +1 -0
  334. package/dist/v2/TaxesDashboard.js +317 -0
  335. package/dist/v2/TaxesDashboard.js.map +1 -0
  336. package/dist/v2/index.js +94 -0
  337. package/dist/v2/index.js.map +1 -0
  338. package/package.json +32 -18
  339. package/dist/CopyButtonWrapper-DkI2F6Ty.js.map +0 -1
  340. package/dist/ExportModal-DGOx1b6l.js.map +0 -1
  341. package/dist/cjs/CopyButtonWrapper-DZ9rE5UR.js.map +0 -1
  342. package/dist/cjs/ExportModal-CJlEDIWM.js.map +0 -1
  343. package/dist/cjs/index-d81RoerD.js.map +0 -1
  344. package/dist/index-BFPr9LL_.js.map +0 -1
@@ -0,0 +1,490 @@
1
+ import { useState, startTransition, useMemo, useEffect } from 'react';
2
+ import { Tooltip, Badge, Typography, Button, Empty, DataTable, Tabs, Spinner } from '@bigbinary/neeto-atoms';
3
+ import { DEFAULT_PAGE_SIZE, DEFAULT_PAGE_INDEX } from 'neetocommons/constants';
4
+ import { getQueryParams, buildUrl } from 'neetocommons/utils';
5
+ import { Bar, buildFiltersFromURL } from '@bigbinary/neeto-filters-frontend';
6
+ import { map, curry, reject, isNil, concat, prop, mergeDeepWith, mergeLeft, isEmpty } from 'ramda';
7
+ import { useHistory } from 'react-router-dom';
8
+ import { E as ExportModal } from '../ExportModal-X-AJPdkc.js';
9
+ import { u as useFetchRefunds } from '../useRefundsApi-DSMKTWIQ.js';
10
+ import { q as PAYMENT_PROVIDERS, r as formatAmount, s as formatCurrency, z as DEFAULT_SORT_PROPERTIES, A as ASSOCIATED_TABLE_COLUMNS, x as shouldTabsVisible, U as UN_HIDEABLE_COLUMNS, D as DEFAULT_PAGE_VALUES, y as DASHBOARD_KIND } from '../index-CajHy3NQ.js';
11
+ import { m as mergeEnforcedFilters } from '../dashboard-Ba2uhKXD.js';
12
+ import { t } from 'i18next';
13
+ import { toLabelAndValue, humanize, snakeToCamelCase, isPresent, isNotPresent, camelToSnakeCase } from 'neetocist';
14
+ import { useTableConfigurations } from '@bigbinary/neeto-molecules/v2/Columns';
15
+ import TableWrapper from '@bigbinary/neeto-molecules/v2/TableWrapper';
16
+ import { useTranslation } from 'react-i18next';
17
+ import { T as TABLE_KEYS } from '../exportChannel-Db0U5gc1.js';
18
+ import { b as buildDefaultTableColumns } from '../index-CKJlawqs.js';
19
+ import DateFormat from '@bigbinary/neeto-molecules/v2/DateFormat';
20
+ import { C as CopyButtonWrapper } from '../CopyButtonWrapper-B53v2TyQ.js';
21
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
22
+ import Header from '@bigbinary/neeto-molecules/v2/Header';
23
+ import SubHeader from '@bigbinary/neeto-molecules/v2/SubHeader';
24
+ import '@bigbinary/neeto-icons';
25
+ import '../useExportsApi-C1wjoVYy.js';
26
+ import '@tanstack/react-query';
27
+ import 'axios';
28
+ import '../queryConstants-8c7Nd8ML.js';
29
+ import 'decimal.js';
30
+ import '@bigbinary/neeto-molecules/v2/CopyToClipboardButton';
31
+ import '../copy-button-EhEBcNP9.js';
32
+
33
+ const REFUND_DASHBOARD_TAB = {
34
+ all: "all",
35
+ successful: "successful",
36
+ declined: "declined",
37
+ pending: "pending"
38
+ };
39
+ const SEARCH_PROPS = {
40
+ node: "identifier,",
41
+ key: "search_term",
42
+ model: "NeetoPaymentsEngine::Refund,",
43
+ placeholder: t("neetoPayments.common.searchByIdentifier")
44
+ };
45
+ const FILTER_COLUMNS = [{
46
+ key: "payment_provider",
47
+ label: t("neetoPayments.common.paymentProvider"),
48
+ node: "payment_provider",
49
+ type: "single_option",
50
+ values: map(toLabelAndValue, PAYMENT_PROVIDERS)
51
+ }, {
52
+ key: "amount",
53
+ label: t("neetoPayments.common.refundAmount"),
54
+ node: "amount",
55
+ type: "decimal"
56
+ }, {
57
+ key: "payment_amount",
58
+ label: t("neetoPayments.common.paymentAmount"),
59
+ node: "payment.amount",
60
+ model: "NeetoPaymentsEngine::Payment",
61
+ type: "decimal"
62
+ }, {
63
+ key: "refunded_at",
64
+ label: t("neetoPayments.common.refundTime"),
65
+ node: "refunded_at",
66
+ type: "date"
67
+ }];
68
+ const TAG_STYLE = {
69
+ initiated: "blue",
70
+ declined: "red",
71
+ successful: "green",
72
+ refunded: "secondary",
73
+ pending: "amber"
74
+ };
75
+ const DEFAULT_BADGE_VARIANT = "amber";
76
+
77
+ const getTagStyle = status => TAG_STYLE[status] || DEFAULT_BADGE_VARIANT;
78
+ const preProcessStatus = (type, status, record = {}) => {
79
+ if (type === "payment") {
80
+ return record.isRefunded ? "refunded" : status;
81
+ }
82
+ return snakeToCamelCase(status);
83
+ };
84
+ const renderIdentifier = (identifier, {
85
+ receiptUrl
86
+ }) => {
87
+ const isTemporaryIdentifier = identifier?.startsWith("temp_");
88
+ if (isTemporaryIdentifier) {
89
+ return /*#__PURE__*/jsx(Tooltip, {
90
+ content: t("neetoPayments.tooltipContent.paymentIdentifierUnavailable"),
91
+ position: "top",
92
+ children: /*#__PURE__*/jsx("div", {
93
+ className: "text-center",
94
+ children: /*#__PURE__*/jsx(Typography, {
95
+ variant: "body2",
96
+ children: t("neetoPayments.common.notAvailable")
97
+ })
98
+ })
99
+ });
100
+ }
101
+ return /*#__PURE__*/jsx(CopyButtonWrapper, {
102
+ content: identifier,
103
+ children: /*#__PURE__*/jsx(Button, {
104
+ href: receiptUrl,
105
+ label: identifier,
106
+ size: "sm",
107
+ target: "_blank",
108
+ variant: "link"
109
+ })
110
+ });
111
+ };
112
+ const renderStatus = curry((type, status, record) => {
113
+ const processedStatus = preProcessStatus(type, status, record);
114
+ return /*#__PURE__*/jsx(Tooltip, {
115
+ content: t(`neetoPayments.tooltipContent.${type}.${processedStatus}`),
116
+ position: "top",
117
+ children: /*#__PURE__*/jsx("div", {
118
+ className: "w-fit",
119
+ children: /*#__PURE__*/jsx(Badge, {
120
+ variant: getTagStyle(processedStatus),
121
+ children: humanize(t(`neetoPayments.tagLabels.${type}.${processedStatus}`))
122
+ })
123
+ })
124
+ });
125
+ });
126
+ const renderDate = date => {
127
+ if (isPresent(date)) {
128
+ return /*#__PURE__*/jsx(DateFormat.DateTime, {
129
+ date
130
+ });
131
+ }
132
+ return /*#__PURE__*/jsx(Typography, {
133
+ variant: "body2",
134
+ children: t("neetoPayments.common.notAvailable")
135
+ });
136
+ };
137
+ const getDefaultColumns = () => [{
138
+ header: t("neetoPayments.common.id"),
139
+ id: "id",
140
+ accessorKey: "id",
141
+ size: 85,
142
+ position: 0,
143
+ enableHiding: false
144
+ }, {
145
+ header: t("neetoPayments.common.identifier"),
146
+ id: "identifier",
147
+ accessorKey: "identifier",
148
+ size: 300,
149
+ cell: ({
150
+ row
151
+ }) => renderIdentifier(row.getValue("identifier"), row.original),
152
+ position: 1,
153
+ enableHiding: false
154
+ }, {
155
+ header: t("neetoPayments.common.provider"),
156
+ id: "paymentProvider",
157
+ accessorKey: "paymentProvider",
158
+ size: 150,
159
+ cell: ({
160
+ row
161
+ }) => humanize(row.getValue("paymentProvider")),
162
+ position: 2
163
+ }, {
164
+ header: t("neetoPayments.common.status"),
165
+ id: "status",
166
+ accessorKey: "status",
167
+ size: 200,
168
+ cell: ({
169
+ row
170
+ }) => renderStatus("refund")(row.getValue("status"), row.original),
171
+ enableSorting: true,
172
+ position: 3,
173
+ enableHiding: false
174
+ }, {
175
+ header: t("neetoPayments.common.refundAmount"),
176
+ id: "amount",
177
+ accessorKey: "amount",
178
+ size: 203,
179
+ cell: ({
180
+ row
181
+ }) => formatAmount(row.getValue("amount")),
182
+ enableSorting: true,
183
+ position: 4
184
+ }, {
185
+ header: t("neetoPayments.common.paymentAmount"),
186
+ id: "paymentAmount",
187
+ accessorFn: row => row.payment?.amount,
188
+ size: 210,
189
+ cell: ({
190
+ row
191
+ }) => formatAmount(row.original.payment?.amount),
192
+ enableSorting: true,
193
+ position: 4
194
+ }, {
195
+ header: t("neetoPayments.common.currency"),
196
+ id: "currency",
197
+ accessorKey: "currency",
198
+ size: 180,
199
+ cell: ({
200
+ row
201
+ }) => formatCurrency(row.getValue("currency")),
202
+ enableSorting: true,
203
+ position: 4
204
+ }, {
205
+ header: t("neetoPayments.common.refundTime"),
206
+ id: "refundedAt",
207
+ accessorKey: "refundedAt",
208
+ size: 190,
209
+ cell: ({
210
+ row
211
+ }) => renderDate(row.getValue("refundedAt")),
212
+ enableSorting: true,
213
+ position: 5
214
+ }, {
215
+ header: t("neetoPayments.common.paymentIdentifier"),
216
+ id: "paymentIdentifier",
217
+ accessorFn: row => row.payment?.identifier,
218
+ size: 300,
219
+ cell: ({
220
+ row
221
+ }) => renderIdentifier(row.original.payment?.identifier, row.original.payment ?? {}),
222
+ position: 6
223
+ }];
224
+
225
+ const buildSearchProps = (searchProps, searchTerm) => mergeDeepWith(concat, SEARCH_PROPS, mergeLeft({
226
+ value: searchTerm.trim()
227
+ }, searchProps));
228
+ const buildFilterColumns = (payableEntityColumns = []) => reject(isNil, concat(FILTER_COLUMNS, map(prop("filterProps"), payableEntityColumns)));
229
+ const buildRowData = ({
230
+ refunds,
231
+ pageProperties = {}
232
+ }) => refunds?.map((element, index) => ({
233
+ ...element,
234
+ id: isEmpty(pageProperties) ? index + 1 : pageProperties.pageSize * (pageProperties.page - 1) + index + 1
235
+ }));
236
+
237
+ const List = ({
238
+ isFetching,
239
+ refunds,
240
+ views,
241
+ payableEntityColumns,
242
+ setSortProperties,
243
+ pageProperties,
244
+ handleTablePagination
245
+ }) => {
246
+ const {
247
+ t
248
+ } = useTranslation();
249
+ const {
250
+ tab = REFUND_DASHBOARD_TAB.all
251
+ } = getQueryParams();
252
+ const refundsCount = views[tab];
253
+ const allColumns = buildDefaultTableColumns({
254
+ payableEntityColumns,
255
+ defaultColumns: getDefaultColumns(),
256
+ isAllTab: tab === REFUND_DASHBOARD_TAB.all
257
+ });
258
+ const {
259
+ isTableConfigurationLoading,
260
+ customizedColumns,
261
+ hideColumn
262
+ } = useTableConfigurations(`${TABLE_KEYS.REFUNDS_TABLE}-${tab}`, allColumns);
263
+ if (isNotPresent(refunds)) {
264
+ return /*#__PURE__*/jsx("div", {
265
+ className: "flex h-full w-full items-center justify-center",
266
+ children: /*#__PURE__*/jsx(Empty, {
267
+ title: tab === REFUND_DASHBOARD_TAB.all ? t("neetoPayments.emptyState.refund") : t("neetoPayments.emptyState.refundWithStatus", {
268
+ status: tab
269
+ })
270
+ })
271
+ });
272
+ }
273
+ const handleSort = sort => {
274
+ if (!sort) {
275
+ setSortProperties(DEFAULT_SORT_PROPERTIES);
276
+ return;
277
+ }
278
+ const processedField = camelToSnakeCase(sort.field);
279
+ const sortBy = ASSOCIATED_TABLE_COLUMNS?.[processedField] ?? processedField;
280
+ setSortProperties({
281
+ sortBy,
282
+ orderBy: sort.order === "ascend" ? "ASC" : "DESC"
283
+ });
284
+ };
285
+ return /*#__PURE__*/jsx(TableWrapper, {
286
+ hasPagination: refundsCount > pageProperties?.pageSize,
287
+ children: /*#__PURE__*/jsx(DataTable, {
288
+ allowRowClick: false,
289
+ columns: customizedColumns,
290
+ currentPage: pageProperties?.page,
291
+ data: buildRowData({
292
+ refunds,
293
+ pageProperties}),
294
+ enableURLPagination: false,
295
+ enableURLSort: false,
296
+ loading: isFetching || isTableConfigurationLoading,
297
+ totalCount: refundsCount,
298
+ onColumnHide: id => hideColumn(id),
299
+ onSort: handleSort,
300
+ onPageChange: page => handleTablePagination(page, pageProperties?.pageSize)
301
+ })
302
+ });
303
+ };
304
+
305
+ const TopSection = ({
306
+ views,
307
+ filters,
308
+ setFilters,
309
+ filterableColumns,
310
+ searchKeywordProps,
311
+ payableEntityColumns,
312
+ setIsExportModalOpen
313
+ }) => {
314
+ const [isFilterPaneOpen, setIsFilterPaneOpen] = useState(false);
315
+ const {
316
+ t
317
+ } = useTranslation();
318
+ const history = useHistory();
319
+ const {
320
+ tab = REFUND_DASHBOARD_TAB.all
321
+ } = getQueryParams();
322
+ const refundsCount = views?.[tab];
323
+ const isRefundCountVisible = refundsCount > 0 || refundsCount === 0 && isPresent(filters);
324
+ const isFilterButtonVisible = isRefundCountVisible || isPresent(filters);
325
+ const handleFiltersChange = filters => {
326
+ startTransition(() => {
327
+ setFilters(filters);
328
+ });
329
+ };
330
+ const handleTabChange = tab => {
331
+ const queryParams = getQueryParams({
332
+ toCamelCase: false
333
+ });
334
+ const newParams = {
335
+ tab,
336
+ page: DEFAULT_PAGE_INDEX,
337
+ page_size: DEFAULT_PAGE_SIZE
338
+ };
339
+ history.push(buildUrl(window.location.pathname, mergeLeft(newParams, queryParams)));
340
+ };
341
+ return /*#__PURE__*/jsxs(Fragment, {
342
+ children: [/*#__PURE__*/jsx(Header, {
343
+ title: t("neetoPayments.title.refunds"),
344
+ searchProps: isFilterButtonVisible && {
345
+ placeholder: searchKeywordProps.placeholder,
346
+ className: "w-80"
347
+ }
348
+ }), shouldTabsVisible(views) && /*#__PURE__*/jsx(Tabs, {
349
+ value: tab,
350
+ onValueChange: handleTabChange,
351
+ children: /*#__PURE__*/jsx(Tabs.List, {
352
+ children: Object.keys(REFUND_DASHBOARD_TAB).map(item => /*#__PURE__*/jsx(Tabs.Item, {
353
+ value: item,
354
+ children: t(`neetoPayments.common.${item}`)
355
+ }, item))
356
+ })
357
+ }), /*#__PURE__*/jsx(SubHeader, {
358
+ className: "my-4",
359
+ leftActionBlock: isRefundCountVisible && /*#__PURE__*/jsx(Typography, {
360
+ className: "me-2 font-semibold",
361
+ variant: "body1",
362
+ children: tab === REFUND_DASHBOARD_TAB.all ? t("neetoPayments.countOf.refund", {
363
+ count: refundsCount
364
+ }) : t("neetoPayments.countOf.refundWithStatus", {
365
+ count: refundsCount,
366
+ status: tab
367
+ })
368
+ }),
369
+ rightActionBlock: isFilterButtonVisible && /*#__PURE__*/jsx(SubHeader.RightBlock, {
370
+ columnsButtonProps: {
371
+ columnData: buildDefaultTableColumns({
372
+ defaultColumns: getDefaultColumns(),
373
+ payableEntityColumns,
374
+ isAllTab: tab === REFUND_DASHBOARD_TAB.all
375
+ }),
376
+ fixedColumns: UN_HIDEABLE_COLUMNS,
377
+ tableKey: `${TABLE_KEYS.REFUNDS_TABLE}-${tab}`
378
+ },
379
+ downloadButtonProps: {
380
+ onClick: () => setIsExportModalOpen(true)
381
+ },
382
+ filterProps: {
383
+ columns: filterableColumns,
384
+ isOpen: isFilterPaneOpen,
385
+ keyword: searchKeywordProps,
386
+ setIsOpen: setIsFilterPaneOpen,
387
+ onChange: handleFiltersChange
388
+ }
389
+ })
390
+ }), /*#__PURE__*/jsx(Bar, {
391
+ columns: filterableColumns,
392
+ keyword: searchKeywordProps,
393
+ setIsPaneOpen: setIsFilterPaneOpen,
394
+ onChange: handleFiltersChange
395
+ })]
396
+ });
397
+ };
398
+
399
+ const RefundsDashboard = ({
400
+ searchProps,
401
+ payableEntityColumns,
402
+ accountIds,
403
+ enforceFilterValues = []
404
+ }) => {
405
+ const {
406
+ searchTerm = ""
407
+ } = getQueryParams();
408
+ const filterableColumns = buildFilterColumns(payableEntityColumns);
409
+ const searchKeywordProps = buildSearchProps(searchProps, searchTerm);
410
+ const [sortProperties, setSortProperties] = useState(DEFAULT_SORT_PROPERTIES);
411
+ const [pageProperties, setPageProperties] = useState(DEFAULT_PAGE_VALUES);
412
+ const [isExportModalOpen, setIsExportModalOpen] = useState(false);
413
+ const [filters, setFilters] = useState(buildFiltersFromURL([...filterableColumns, searchKeywordProps]));
414
+ const history = useHistory();
415
+ const {
416
+ tab = REFUND_DASHBOARD_TAB.all
417
+ } = getQueryParams();
418
+ const apiFilters = useMemo(() => mergeEnforcedFilters(filters, enforceFilterValues, filterableColumns), [filters, enforceFilterValues, filterableColumns]);
419
+ const payload = {
420
+ tab,
421
+ filters: apiFilters,
422
+ accountIds,
423
+ ...pageProperties,
424
+ ...sortProperties
425
+ };
426
+ const {
427
+ data: {
428
+ refunds,
429
+ views
430
+ } = {},
431
+ isFetching,
432
+ isPending: isRefundsLoading
433
+ } = useFetchRefunds(payload, {
434
+ enabled: true
435
+ });
436
+ const handleTablePagination = (page, pageSize) => {
437
+ const queryParams = getQueryParams({
438
+ toCamelCase: false
439
+ });
440
+ history.push(buildUrl(window.location.pathname, mergeLeft({
441
+ page,
442
+ page_size: pageSize
443
+ }, queryParams)));
444
+ setPageProperties({
445
+ page,
446
+ pageSize
447
+ });
448
+ };
449
+ useEffect(() => {
450
+ handleTablePagination(DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE);
451
+ setSortProperties(DEFAULT_SORT_PROPERTIES);
452
+ }, [filters, tab]);
453
+ if (isRefundsLoading) {
454
+ return /*#__PURE__*/jsx("div", {
455
+ className: "flex h-full w-full items-center justify-center",
456
+ children: /*#__PURE__*/jsx(Spinner, {})
457
+ });
458
+ }
459
+ return /*#__PURE__*/jsxs(Fragment, {
460
+ children: [/*#__PURE__*/jsx(TopSection, {
461
+ filterableColumns,
462
+ filters,
463
+ pageProperties,
464
+ payableEntityColumns,
465
+ searchKeywordProps,
466
+ setFilters,
467
+ setIsExportModalOpen,
468
+ setPageProperties,
469
+ setSortProperties,
470
+ views
471
+ }), /*#__PURE__*/jsx(List, {
472
+ handleTablePagination,
473
+ isFetching,
474
+ pageProperties,
475
+ payableEntityColumns,
476
+ refunds,
477
+ setSortProperties,
478
+ views
479
+ }), /*#__PURE__*/jsx(ExportModal, {
480
+ isExportModalOpen,
481
+ setIsExportModalOpen,
482
+ sortProperties,
483
+ dashboardKind: DASHBOARD_KIND.refunds,
484
+ filters: apiFilters
485
+ })]
486
+ });
487
+ };
488
+
489
+ export { RefundsDashboard as default };
490
+ //# sourceMappingURL=RefundsDashboard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RefundsDashboard.js","sources":["../../app/javascript/src/v2/components/RefundsDashboard/constants.js","../../app/javascript/src/v2/components/RefundsDashboard/columns/utils.jsx","../../app/javascript/src/v2/components/RefundsDashboard/utils.js","../../app/javascript/src/v2/components/RefundsDashboard/List.jsx","../../app/javascript/src/v2/components/RefundsDashboard/TopSection.jsx","../../app/javascript/src/v2/components/RefundsDashboard/index.jsx"],"sourcesContent":["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 = \"refundsDashboard\";\n\nexport const REFUND_DASHBOARD_TAB = {\n all: \"all\",\n successful: \"successful\",\n declined: \"declined\",\n pending: \"pending\",\n};\n\nexport const SEARCH_PROPS = {\n node: \"identifier,\",\n key: \"search_term\",\n model: \"NeetoPaymentsEngine::Refund,\",\n placeholder: t(\"neetoPayments.common.searchByIdentifier\"),\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: map(toLabelAndValue, PAYMENT_PROVIDERS),\n },\n {\n key: \"amount\",\n label: t(\"neetoPayments.common.refundAmount\"),\n node: \"amount\",\n type: \"decimal\",\n },\n {\n key: \"payment_amount\",\n label: t(\"neetoPayments.common.paymentAmount\"),\n node: \"payment.amount\",\n model: \"NeetoPaymentsEngine::Payment\",\n type: \"decimal\",\n },\n {\n key: \"refunded_at\",\n label: t(\"neetoPayments.common.refundTime\"),\n node: \"refunded_at\",\n type: \"date\",\n },\n];\n\nexport const TAG_STYLE = {\n initiated: \"blue\",\n declined: \"red\",\n successful: \"green\",\n refunded: \"secondary\",\n pending: \"amber\",\n};\n\nexport const DEFAULT_SORT_PROPERTIES = {\n sortBy: \"refunded_at\",\n orderBy: \"DESC\",\n};\n\nexport const DEFAULT_BADGE_VARIANT = \"amber\";\n","import { Badge, Button, Tooltip, Typography } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { snakeToCamelCase, humanize, isPresent } from \"neetocist\";\nimport DateFormat from \"neetomolecules/v2/DateFormat\";\nimport { curry } from \"ramda\";\n\nimport { formatAmount, formatCurrency } from \"utils\";\nimport CopyButtonWrapper from \"v2/components/Common/CopyButtonWrapper\";\n\nimport { DEFAULT_BADGE_VARIANT, TAG_STYLE } from \"../constants\";\n\nconst getTagStyle = status => TAG_STYLE[status] || DEFAULT_BADGE_VARIANT;\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 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 variant=\"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=\"sm\"\n target=\"_blank\"\n variant=\"link\"\n />\n </CopyButtonWrapper>\n );\n};\n\nconst renderStatus = curry((type, status, record) => {\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 <Badge variant={getTagStyle(processedStatus)}>\n {humanize(t(`neetoPayments.tagLabels.${type}.${processedStatus}`))}\n </Badge>\n </div>\n </Tooltip>\n );\n});\n\nconst renderDate = date => {\n if (isPresent(date)) {\n return <DateFormat.DateTime {...{ date }} />;\n }\n\n return (\n <Typography variant=\"body2\">\n {t(\"neetoPayments.common.notAvailable\")}\n </Typography>\n );\n};\n\nexport const getDefaultColumns = () => [\n {\n header: t(\"neetoPayments.common.id\"),\n id: \"id\",\n accessorKey: \"id\",\n size: 85,\n position: 0,\n enableHiding: false,\n },\n {\n header: t(\"neetoPayments.common.identifier\"),\n id: \"identifier\",\n accessorKey: \"identifier\",\n size: 300,\n cell: ({ row }) =>\n renderIdentifier(row.getValue(\"identifier\"), row.original),\n position: 1,\n enableHiding: false,\n },\n {\n header: t(\"neetoPayments.common.provider\"),\n id: \"paymentProvider\",\n accessorKey: \"paymentProvider\",\n size: 150,\n cell: ({ row }) => humanize(row.getValue(\"paymentProvider\")),\n position: 2,\n },\n {\n header: t(\"neetoPayments.common.status\"),\n id: \"status\",\n accessorKey: \"status\",\n size: 200,\n cell: ({ row }) =>\n renderStatus(\"refund\")(row.getValue(\"status\"), row.original),\n enableSorting: true,\n position: 3,\n enableHiding: false,\n },\n {\n header: t(\"neetoPayments.common.refundAmount\"),\n id: \"amount\",\n accessorKey: \"amount\",\n size: 203,\n cell: ({ row }) => formatAmount(row.getValue(\"amount\")),\n enableSorting: true,\n position: 4,\n },\n {\n header: t(\"neetoPayments.common.paymentAmount\"),\n id: \"paymentAmount\",\n accessorFn: row => row.payment?.amount,\n size: 210,\n cell: ({ row }) => formatAmount(row.original.payment?.amount),\n enableSorting: true,\n position: 4,\n },\n {\n header: t(\"neetoPayments.common.currency\"),\n id: \"currency\",\n accessorKey: \"currency\",\n size: 180,\n cell: ({ row }) => formatCurrency(row.getValue(\"currency\")),\n enableSorting: true,\n position: 4,\n },\n {\n header: t(\"neetoPayments.common.refundTime\"),\n id: \"refundedAt\",\n accessorKey: \"refundedAt\",\n size: 190,\n cell: ({ row }) => renderDate(row.getValue(\"refundedAt\")),\n enableSorting: true,\n position: 5,\n },\n {\n header: t(\"neetoPayments.common.paymentIdentifier\"),\n id: \"paymentIdentifier\",\n accessorFn: row => row.payment?.identifier,\n size: 300,\n cell: ({ row }) =>\n renderIdentifier(\n row.original.payment?.identifier,\n row.original.payment ?? {}\n ),\n position: 6,\n },\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 = ({ refunds, pageProperties = {} }) =>\n refunds?.map((element, index) => ({\n ...element,\n id: isEmpty(pageProperties)\n ? index + 1\n : pageProperties.pageSize * (pageProperties.page - 1) + index + 1,\n }));\n","import { DataTable, Empty } from \"@bigbinary/neeto-atoms\";\nimport { camelToSnakeCase, isNotPresent } from \"neetocist\";\nimport { getQueryParams } from \"neetocommons/utils\";\nimport { useTableConfigurations } from \"neetomolecules/v2/Columns\";\nimport TableWrapper from \"neetomolecules/v2/TableWrapper\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n DEFAULT_SORT_PROPERTIES,\n ASSOCIATED_TABLE_COLUMNS,\n} from \"src/constants\";\nimport { TABLE_KEYS } from \"src/constants/tableKeys\";\nimport { buildDefaultTableColumns } from \"v2/utils\";\n\nimport { getDefaultColumns } from \"./columns/utils\";\nimport { REFUND_DASHBOARD_TAB } from \"./constants\";\nimport { buildRowData } from \"./utils\";\n\nconst List = ({\n isFetching,\n refunds,\n views,\n payableEntityColumns,\n setSortProperties,\n pageProperties,\n handleTablePagination,\n}) => {\n const { t } = useTranslation();\n const { tab = REFUND_DASHBOARD_TAB.all } = getQueryParams();\n\n const refundsCount = views[tab];\n\n const allColumns = buildDefaultTableColumns({\n payableEntityColumns,\n defaultColumns: getDefaultColumns(),\n isAllTab: tab === REFUND_DASHBOARD_TAB.all,\n });\n\n const { isTableConfigurationLoading, customizedColumns, hideColumn } =\n useTableConfigurations(`${TABLE_KEYS.REFUNDS_TABLE}-${tab}`, allColumns);\n\n if (isNotPresent(refunds)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Empty\n title={\n tab === REFUND_DASHBOARD_TAB.all\n ? t(\"neetoPayments.emptyState.refund\")\n : t(\"neetoPayments.emptyState.refundWithStatus\", {\n status: tab,\n })\n }\n />\n </div>\n );\n }\n\n const handleSort = sort => {\n if (!sort) {\n setSortProperties(DEFAULT_SORT_PROPERTIES);\n\n return;\n }\n\n const processedField = camelToSnakeCase(sort.field);\n const sortBy = ASSOCIATED_TABLE_COLUMNS?.[processedField] ?? processedField;\n setSortProperties({\n sortBy,\n orderBy: sort.order === \"ascend\" ? \"ASC\" : \"DESC\",\n });\n };\n\n return (\n <TableWrapper hasPagination={refundsCount > pageProperties?.pageSize}>\n <DataTable\n allowRowClick={false}\n columns={customizedColumns}\n currentPage={pageProperties?.page}\n data={buildRowData({ refunds, pageProperties, tab })}\n enableURLPagination={false}\n enableURLSort={false}\n loading={isFetching || isTableConfigurationLoading}\n totalCount={refundsCount}\n onColumnHide={id => hideColumn(id)}\n onSort={handleSort}\n onPageChange={page =>\n handleTablePagination(page, pageProperties?.pageSize)\n }\n />\n </TableWrapper>\n );\n};\n\nexport default List;\n","import { startTransition, useState } from \"react\";\n\nimport { Tabs, Typography } from \"@bigbinary/neeto-atoms\";\nimport { isPresent } 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/v2/Header\";\nimport SubHeader from \"neetomolecules/v2/SubHeader\";\nimport { mergeLeft } 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 { shouldTabsVisible } from \"utils\";\nimport { buildDefaultTableColumns } from \"v2/utils\";\n\nimport { getDefaultColumns } from \"./columns/utils\";\nimport { REFUND_DASHBOARD_TAB } from \"./constants\";\n\nconst TopSection = ({\n views,\n filters,\n setFilters,\n filterableColumns,\n searchKeywordProps,\n payableEntityColumns,\n setIsExportModalOpen,\n}) => {\n const [isFilterPaneOpen, setIsFilterPaneOpen] = useState(false);\n\n const { t } = useTranslation();\n const history = useHistory();\n const { tab = REFUND_DASHBOARD_TAB.all } = getQueryParams();\n\n const refundsCount = views?.[tab];\n const isRefundCountVisible =\n refundsCount > 0 || (refundsCount === 0 && isPresent(filters));\n const isFilterButtonVisible = isRefundCountVisible || 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.refunds\")}\n searchProps={\n isFilterButtonVisible && {\n placeholder: searchKeywordProps.placeholder,\n className: \"w-80\",\n }\n }\n />\n {shouldTabsVisible(views) && (\n <Tabs value={tab} onValueChange={handleTabChange}>\n <Tabs.List>\n {Object.keys(REFUND_DASHBOARD_TAB).map(item => (\n <Tabs.Item key={item} value={item}>\n {t(`neetoPayments.common.${item}`)}\n </Tabs.Item>\n ))}\n </Tabs.List>\n </Tabs>\n )}\n <SubHeader\n className=\"my-4\"\n leftActionBlock={\n isRefundCountVisible && (\n <Typography className=\"me-2 font-semibold\" variant=\"body1\">\n {tab === REFUND_DASHBOARD_TAB.all\n ? t(\"neetoPayments.countOf.refund\", { count: refundsCount })\n : t(\"neetoPayments.countOf.refundWithStatus\", {\n count: refundsCount,\n status: tab,\n })}\n </Typography>\n )\n }\n rightActionBlock={\n isFilterButtonVisible && (\n <SubHeader.RightBlock\n columnsButtonProps={{\n columnData: buildDefaultTableColumns({\n defaultColumns: getDefaultColumns(),\n payableEntityColumns,\n isAllTab: tab === REFUND_DASHBOARD_TAB.all,\n }),\n fixedColumns: UN_HIDEABLE_COLUMNS,\n tableKey: `${TABLE_KEYS.REFUNDS_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, useMemo, useState } from \"react\";\n\nimport { Spinner } from \"@bigbinary/neeto-atoms\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\nimport { buildFiltersFromURL } from \"neetofilters\";\nimport { mergeLeft } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport ExportModal from \"v2/components/Common/ExportModal\";\nimport { useFetchRefunds } from \"hooks/reactQuery/useRefundsApi\";\nimport {\n DASHBOARD_KIND,\n DEFAULT_PAGE_VALUES,\n DEFAULT_SORT_PROPERTIES,\n} from \"src/constants\";\nimport { mergeEnforcedFilters } from \"utils/dashboard\";\n\nimport { REFUND_DASHBOARD_TAB } from \"./constants\";\nimport List from \"./List\";\nimport TopSection from \"./TopSection\";\nimport { buildFilterColumns, buildSearchProps } from \"./utils\";\n\nconst RefundsDashboard = ({\n searchProps,\n payableEntityColumns,\n accountIds,\n enforceFilterValues = [],\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\n const history = useHistory();\n const { tab = REFUND_DASHBOARD_TAB.all } = getQueryParams();\n\n const apiFilters = useMemo(\n () => mergeEnforcedFilters(filters, enforceFilterValues, filterableColumns),\n [filters, enforceFilterValues, filterableColumns]\n );\n\n const payload = {\n tab,\n filters: apiFilters,\n accountIds,\n ...pageProperties,\n ...sortProperties,\n };\n\n const {\n data: { refunds, views } = {},\n isFetching,\n isPending: isRefundsLoading,\n } = useFetchRefunds(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 (isRefundsLoading) {\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 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 handleTablePagination,\n isFetching,\n pageProperties,\n payableEntityColumns,\n refunds,\n setSortProperties,\n views,\n }}\n />\n <ExportModal\n {...{\n isExportModalOpen,\n setIsExportModalOpen,\n sortProperties,\n }}\n dashboardKind={DASHBOARD_KIND.refunds}\n filters={apiFilters}\n />\n </>\n );\n};\n\nexport default RefundsDashboard;\n"],"names":["REFUND_DASHBOARD_TAB","all","successful","declined","pending","SEARCH_PROPS","node","key","model","placeholder","t","FILTER_COLUMNS","label","type","values","map","toLabelAndValue","PAYMENT_PROVIDERS","TAG_STYLE","initiated","refunded","DEFAULT_BADGE_VARIANT","getTagStyle","status","preProcessStatus","record","isRefunded","snakeToCamelCase","renderIdentifier","identifier","receiptUrl","isTemporaryIdentifier","startsWith","_jsx","Tooltip","content","position","children","className","Typography","variant","CopyButtonWrapper","Button","href","size","target","renderStatus","curry","processedStatus","Badge","humanize","renderDate","date","isPresent","DateFormat","DateTime","getDefaultColumns","header","id","accessorKey","enableHiding","cell","row","getValue","original","enableSorting","formatAmount","accessorFn","payment","amount","formatCurrency","buildSearchProps","searchProps","searchTerm","mergeDeepWith","concat","mergeLeft","value","trim","buildFilterColumns","payableEntityColumns","reject","isNil","prop","buildRowData","refunds","pageProperties","element","index","isEmpty","pageSize","page","List","isFetching","views","setSortProperties","handleTablePagination","useTranslation","tab","getQueryParams","refundsCount","allColumns","buildDefaultTableColumns","defaultColumns","isAllTab","isTableConfigurationLoading","customizedColumns","hideColumn","useTableConfigurations","TABLE_KEYS","REFUNDS_TABLE","isNotPresent","Empty","title","handleSort","sort","DEFAULT_SORT_PROPERTIES","processedField","camelToSnakeCase","field","sortBy","ASSOCIATED_TABLE_COLUMNS","orderBy","order","TableWrapper","hasPagination","DataTable","allowRowClick","columns","currentPage","data","enableURLPagination","enableURLSort","loading","totalCount","onColumnHide","onSort","onPageChange","TopSection","filters","setFilters","filterableColumns","searchKeywordProps","setIsExportModalOpen","isFilterPaneOpen","setIsFilterPaneOpen","useState","history","useHistory","isRefundCountVisible","isFilterButtonVisible","handleFiltersChange","startTransition","handleTabChange","queryParams","toCamelCase","newParams","DEFAULT_PAGE_INDEX","page_size","DEFAULT_PAGE_SIZE","push","buildUrl","window","location","pathname","_jsxs","_Fragment","Header","shouldTabsVisible","Tabs","onValueChange","Object","keys","item","Item","SubHeader","leftActionBlock","count","rightActionBlock","RightBlock","columnsButtonProps","columnData","fixedColumns","UN_HIDEABLE_COLUMNS","tableKey","downloadButtonProps","onClick","filterProps","isOpen","keyword","setIsOpen","onChange","FiltersBar","setIsPaneOpen","RefundsDashboard","accountIds","enforceFilterValues","sortProperties","setPageProperties","DEFAULT_PAGE_VALUES","isExportModalOpen","buildFiltersFromURL","apiFilters","useMemo","mergeEnforcedFilters","payload","isPending","isRefundsLoading","useFetchRefunds","enabled","useEffect","Spinner","ExportModal","dashboardKind","DASHBOARD_KIND"],"mappings":"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"}