@bigbinary/neeto-payments-frontend 6.1.31 → 6.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/AccountsDashboard.js +7 -6
- package/dist/AccountsDashboard.js.map +1 -1
- package/dist/AdminCancelRecurringPaymentButton.js +4 -17
- package/dist/AdminCancelRecurringPaymentButton.js.map +1 -1
- package/dist/CashPaymentButton.js +2 -2
- package/dist/ConfirmCashPaymentButton.js +2 -2
- package/dist/CopyButtonWrapper-B53v2TyQ.js +22 -0
- package/dist/CopyButtonWrapper-B53v2TyQ.js.map +1 -0
- package/dist/CopyButtonWrapper-CbzDq6Cq.js +22 -0
- package/dist/CopyButtonWrapper-CbzDq6Cq.js.map +1 -0
- package/dist/CustomerCancelRecurringPaymentForm.js +7 -27
- package/dist/CustomerCancelRecurringPaymentForm.js.map +1 -1
- package/dist/{ExportModal-r0L3_JqO.js → ExportModal-Bun3pMGn.js} +3 -17
- package/dist/ExportModal-Bun3pMGn.js.map +1 -0
- package/dist/ExportModal-X-AJPdkc.js +105 -0
- package/dist/ExportModal-X-AJPdkc.js.map +1 -0
- package/dist/ManualUpiConnect.js +6 -37
- package/dist/ManualUpiConnect.js.map +1 -1
- package/dist/ManualUpiPayment.js +3 -2
- package/dist/ManualUpiPayment.js.map +1 -1
- package/dist/ManualUpiPaymentConfirmButton.js +2 -2
- package/dist/ManualUpiPaymentRejectButton.js +2 -2
- package/dist/PaymentsDashboard.js +10 -20
- package/dist/PaymentsDashboard.js.map +1 -1
- package/dist/PayoutsDashboard.js +7 -6
- package/dist/PayoutsDashboard.js.map +1 -1
- package/dist/PayoutsPage.js +6 -22
- package/dist/PayoutsPage.js.map +1 -1
- package/dist/RazorpayConnect.js +2 -2
- package/dist/RazorpayLinkedAccountForm.js +5 -24
- package/dist/RazorpayLinkedAccountForm.js.map +1 -1
- package/dist/RazorpayPaymentButton.js +6 -4
- package/dist/RazorpayPaymentButton.js.map +1 -1
- package/dist/RecurringPaymentSettings.js +7 -25
- package/dist/RecurringPaymentSettings.js.map +1 -1
- package/dist/RefundsDashboard.js +10 -20
- package/dist/RefundsDashboard.js.map +1 -1
- package/dist/SplitTransfersDashboard.js +10 -35
- package/dist/SplitTransfersDashboard.js.map +1 -1
- package/dist/StripeCheckoutSetting.js +7 -25
- package/dist/StripeCheckoutSetting.js.map +1 -1
- package/dist/StripeConnect.js +7 -16
- package/dist/StripeConnect.js.map +1 -1
- package/dist/StripeManage.js +2 -1
- package/dist/StripeManage.js.map +1 -1
- package/dist/TaxesDashboard.js +7 -57
- package/dist/TaxesDashboard.js.map +1 -1
- package/dist/buildStripeTransactionLink.js +1 -1
- package/dist/cjs/AccountsDashboard.js +7 -6
- package/dist/cjs/AccountsDashboard.js.map +1 -1
- package/dist/cjs/AdminCancelRecurringPaymentButton.js +5 -18
- package/dist/cjs/AdminCancelRecurringPaymentButton.js.map +1 -1
- package/dist/cjs/CashPaymentButton.js +2 -2
- package/dist/cjs/ConfirmCashPaymentButton.js +2 -2
- package/dist/cjs/CopyButtonWrapper-CXzqqYIp.js +24 -0
- package/dist/cjs/CopyButtonWrapper-CXzqqYIp.js.map +1 -0
- package/dist/cjs/CopyButtonWrapper-CbcAHUmk.js +24 -0
- package/dist/cjs/CopyButtonWrapper-CbcAHUmk.js.map +1 -0
- package/dist/cjs/CustomerCancelRecurringPaymentForm.js +9 -29
- package/dist/cjs/CustomerCancelRecurringPaymentForm.js.map +1 -1
- package/dist/cjs/ExportModal-C7_QKb9q.js +107 -0
- package/dist/cjs/ExportModal-C7_QKb9q.js.map +1 -0
- package/dist/cjs/{ExportModal-Bo-VRErR.js → ExportModal-DwLOAhIs.js} +4 -18
- package/dist/cjs/ExportModal-DwLOAhIs.js.map +1 -0
- package/dist/cjs/ManualUpiConnect.js +9 -40
- package/dist/cjs/ManualUpiConnect.js.map +1 -1
- package/dist/cjs/ManualUpiPayment.js +3 -2
- package/dist/cjs/ManualUpiPayment.js.map +1 -1
- package/dist/cjs/ManualUpiPaymentConfirmButton.js +2 -2
- package/dist/cjs/ManualUpiPaymentRejectButton.js +2 -2
- package/dist/cjs/PaymentsDashboard.js +11 -21
- package/dist/cjs/PaymentsDashboard.js.map +1 -1
- package/dist/cjs/PayoutsDashboard.js +7 -6
- package/dist/cjs/PayoutsDashboard.js.map +1 -1
- package/dist/cjs/PayoutsPage.js +7 -23
- package/dist/cjs/PayoutsPage.js.map +1 -1
- package/dist/cjs/RazorpayConnect.js +2 -2
- package/dist/cjs/RazorpayLinkedAccountForm.js +7 -26
- package/dist/cjs/RazorpayLinkedAccountForm.js.map +1 -1
- package/dist/cjs/RazorpayPaymentButton.js +6 -4
- package/dist/cjs/RazorpayPaymentButton.js.map +1 -1
- package/dist/cjs/RecurringPaymentSettings.js +8 -26
- package/dist/cjs/RecurringPaymentSettings.js.map +1 -1
- package/dist/cjs/RefundsDashboard.js +11 -21
- package/dist/cjs/RefundsDashboard.js.map +1 -1
- package/dist/cjs/SplitTransfersDashboard.js +13 -38
- package/dist/cjs/SplitTransfersDashboard.js.map +1 -1
- package/dist/cjs/StripeCheckoutSetting.js +9 -27
- package/dist/cjs/StripeCheckoutSetting.js.map +1 -1
- package/dist/cjs/StripeConnect.js +7 -16
- package/dist/cjs/StripeConnect.js.map +1 -1
- package/dist/cjs/StripeManage.js +2 -1
- package/dist/cjs/StripeManage.js.map +1 -1
- package/dist/cjs/TaxesDashboard.js +10 -60
- package/dist/cjs/TaxesDashboard.js.map +1 -1
- package/dist/cjs/buildStripeTransactionLink.js +1 -1
- package/dist/cjs/constants.js +1 -1
- package/dist/{CopyButtonWrapper-DkI2F6Ty.js → cjs/copy-button-DdBSM5yi.js} +3 -20
- package/dist/cjs/copy-button-DdBSM5yi.js.map +1 -0
- package/dist/cjs/{dashboard-ByRrf_OD.js → dashboard-BGW0_f30.js} +2 -2
- package/dist/cjs/{dashboard-ByRrf_OD.js.map → dashboard-BGW0_f30.js.map} +1 -1
- package/dist/cjs/getAddressElementOptions.js +1 -1
- package/dist/cjs/getAmountInLargestCurrencyUnit.js +1 -1
- package/dist/cjs/getAmountInSmallestCurrencyUnit.js +1 -1
- package/dist/cjs/getAmountWithAppliedTax.js +1 -1
- package/dist/cjs/getFormattedAmount.js +1 -1
- package/dist/cjs/getFormattedDiscountedAmount.js +1 -1
- package/dist/cjs/getFormattedDiscountedPercentage.js +1 -1
- package/dist/cjs/getFormattedTaxAmount.js +1 -1
- package/dist/cjs/getFormattedTipAmount.js +1 -1
- package/dist/cjs/getQrCodeValue.js +1 -1
- package/dist/cjs/getTaxAmount.js +1 -1
- package/dist/cjs/getTipAmount.js +1 -1
- package/dist/cjs/hasAmountToPay.js +1 -1
- package/dist/cjs/{index-C3dlLi3r.js → index-CpEnC-Gq.js} +23 -20
- package/dist/cjs/index-CpEnC-Gq.js.map +1 -0
- package/dist/cjs/index-CsYH-ECo.js +21 -0
- package/dist/cjs/index-CsYH-ECo.js.map +1 -0
- package/dist/cjs/index.js +29 -15
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/main-BnTRneCH.js +7 -0
- package/dist/cjs/main-BnTRneCH.js.map +1 -0
- package/dist/cjs/renderFunctions-DJ3I4O4j.js +73 -0
- package/dist/cjs/renderFunctions-DJ3I4O4j.js.map +1 -0
- package/dist/cjs/{renderFunctions-DuZlWOmX.js → renderFunctions-DW33daSm.js} +3 -3
- package/dist/cjs/{renderFunctions-DuZlWOmX.js.map → renderFunctions-DW33daSm.js.map} +1 -1
- package/dist/cjs/{useAccountsApi-DPB2aG4H.js → useAccountsApi-DaOq20gj.js} +2 -2
- package/dist/cjs/{useAccountsApi-DPB2aG4H.js.map → useAccountsApi-DaOq20gj.js.map} +1 -1
- package/dist/cjs/useBusinessTypesApi-D_td8mux.js +30 -0
- package/dist/cjs/useBusinessTypesApi-D_td8mux.js.map +1 -0
- package/dist/cjs/useCheckoutSettingsApi-fGVkfRBQ.js +31 -0
- package/dist/cjs/useCheckoutSettingsApi-fGVkfRBQ.js.map +1 -0
- package/dist/cjs/useCountriesApi-CWsN_NIT.js +19 -0
- package/dist/cjs/useCountriesApi-CWsN_NIT.js.map +1 -0
- package/dist/cjs/{useExportsApi-eSMwoLoJ.js → useExportsApi-CupgYUpS.js} +2 -2
- package/dist/cjs/{useExportsApi-eSMwoLoJ.js.map → useExportsApi-CupgYUpS.js.map} +1 -1
- package/dist/cjs/useExportsApi-rYuPpXWl.js +21 -0
- package/dist/cjs/useExportsApi-rYuPpXWl.js.map +1 -0
- package/dist/cjs/useFetchData-C85lubOx.js +24 -0
- package/dist/cjs/useFetchData-C85lubOx.js.map +1 -0
- package/dist/cjs/{useIntegrationsApi-CmJgHHH1.js → useIntegrationsApi-CNrrE2OH.js} +2 -2
- package/dist/cjs/{useIntegrationsApi-CmJgHHH1.js.map → useIntegrationsApi-CNrrE2OH.js.map} +1 -1
- package/dist/cjs/{usePaymentApi-BjWrpZLW.js → usePaymentApi-B198Hd_a.js} +2 -2
- package/dist/cjs/{usePaymentApi-BjWrpZLW.js.map → usePaymentApi-B198Hd_a.js.map} +1 -1
- package/dist/cjs/{usePaymentApi-DXJeVvg3.js → usePaymentApi-CuL13mny.js} +2 -2
- package/dist/cjs/{usePaymentApi-DXJeVvg3.js.map → usePaymentApi-CuL13mny.js.map} +1 -1
- package/dist/cjs/{usePaymentApi-CbNuVb24.js → usePaymentApi-DZYqqfhc.js} +2 -2
- package/dist/cjs/{usePaymentApi-CbNuVb24.js.map → usePaymentApi-DZYqqfhc.js.map} +1 -1
- package/dist/cjs/usePaymentsApi-ZomyqUIJ.js +22 -0
- package/dist/cjs/usePaymentsApi-ZomyqUIJ.js.map +1 -0
- package/dist/cjs/{usePlatformApi-B1n8h0bi.js → usePlatformApi-ByvYg8Y-.js} +2 -2
- package/dist/cjs/{usePlatformApi-B1n8h0bi.js.map → usePlatformApi-ByvYg8Y-.js.map} +1 -1
- package/dist/cjs/useRazorpayPayment.js +2 -2
- package/dist/cjs/useRecurringPaymentsApi-DQpypVjt.js +33 -0
- package/dist/cjs/useRecurringPaymentsApi-DQpypVjt.js.map +1 -0
- package/dist/cjs/useRecurringPaymentsApi-Dow6RjiT.js +22 -0
- package/dist/cjs/useRecurringPaymentsApi-Dow6RjiT.js.map +1 -0
- package/dist/cjs/useRecurringSettingsApi-CDA5wZnB.js +31 -0
- package/dist/cjs/useRecurringSettingsApi-CDA5wZnB.js.map +1 -0
- package/dist/cjs/useRefundsApi-enBsXWAk.js +22 -0
- package/dist/cjs/useRefundsApi-enBsXWAk.js.map +1 -0
- package/dist/cjs/useSplitTransfersApi-BcCKsPCE.js +40 -0
- package/dist/cjs/useSplitTransfersApi-BcCKsPCE.js.map +1 -0
- package/dist/cjs/useTaxesApi-BBinhUYT.js +65 -0
- package/dist/cjs/useTaxesApi-BBinhUYT.js.map +1 -0
- package/dist/cjs/useVpasApi-Ts1ivO7S.js +44 -0
- package/dist/cjs/useVpasApi-Ts1ivO7S.js.map +1 -0
- package/dist/cjs/v2/AccountsDashboard.js +477 -0
- package/dist/cjs/v2/AccountsDashboard.js.map +1 -0
- package/dist/cjs/v2/AdminCancelRecurringPaymentButton.js +54 -0
- package/dist/cjs/v2/AdminCancelRecurringPaymentButton.js.map +1 -0
- package/dist/cjs/v2/CashPaymentButton.js +60 -0
- package/dist/cjs/v2/CashPaymentButton.js.map +1 -0
- package/dist/cjs/v2/ConfirmCashPaymentButton.js +100 -0
- package/dist/cjs/v2/ConfirmCashPaymentButton.js.map +1 -0
- package/dist/cjs/v2/CustomerCancelRecurringPaymentForm.js +85 -0
- package/dist/cjs/v2/CustomerCancelRecurringPaymentForm.js.map +1 -0
- package/dist/cjs/v2/ManualUpiConnect.js +227 -0
- package/dist/cjs/v2/ManualUpiConnect.js.map +1 -0
- package/dist/cjs/v2/ManualUpiPayment.js +253 -0
- package/dist/cjs/v2/ManualUpiPayment.js.map +1 -0
- package/dist/cjs/v2/ManualUpiPaymentConfirmButton.js +172 -0
- package/dist/cjs/v2/ManualUpiPaymentConfirmButton.js.map +1 -0
- package/dist/cjs/v2/ManualUpiPaymentRejectButton.js +127 -0
- package/dist/cjs/v2/ManualUpiPaymentRejectButton.js.map +1 -0
- package/dist/cjs/v2/PaymentKindRestrictionAlert.js +33 -0
- package/dist/cjs/v2/PaymentKindRestrictionAlert.js.map +1 -0
- package/dist/cjs/v2/PaymentsDashboard.js +581 -0
- package/dist/cjs/v2/PaymentsDashboard.js.map +1 -0
- package/dist/cjs/v2/PayoutsDashboard.js +516 -0
- package/dist/cjs/v2/PayoutsDashboard.js.map +1 -0
- package/dist/cjs/v2/PayoutsPage.js +144 -0
- package/dist/cjs/v2/PayoutsPage.js.map +1 -0
- package/dist/cjs/v2/RazorpayConnect.js +117 -0
- package/dist/cjs/v2/RazorpayConnect.js.map +1 -0
- package/dist/cjs/v2/RazorpayLinkedAccountForm.js +174 -0
- package/dist/cjs/v2/RazorpayLinkedAccountForm.js.map +1 -0
- package/dist/cjs/v2/RazorpayPaymentButton.js +145 -0
- package/dist/cjs/v2/RazorpayPaymentButton.js.map +1 -0
- package/dist/cjs/v2/RecurringPaymentSettings.js +121 -0
- package/dist/cjs/v2/RecurringPaymentSettings.js.map +1 -0
- package/dist/cjs/v2/RefundsDashboard.js +492 -0
- package/dist/cjs/v2/RefundsDashboard.js.map +1 -0
- package/dist/cjs/v2/SplitTransfersDashboard.js +943 -0
- package/dist/cjs/v2/SplitTransfersDashboard.js.map +1 -0
- package/dist/cjs/v2/StripeCheckoutSetting.js +66 -0
- package/dist/cjs/v2/StripeCheckoutSetting.js.map +1 -0
- package/dist/cjs/v2/StripeConnect.js +384 -0
- package/dist/cjs/v2/StripeConnect.js.map +1 -0
- package/dist/cjs/v2/StripeManage.js +50 -0
- package/dist/cjs/v2/StripeManage.js.map +1 -0
- package/dist/cjs/v2/TaxesDashboard.js +338 -0
- package/dist/cjs/v2/TaxesDashboard.js.map +1 -0
- package/dist/cjs/v2/index.js +125 -0
- package/dist/cjs/v2/index.js.map +1 -0
- package/dist/constants.js +1 -1
- package/dist/{cjs/CopyButtonWrapper-DZ9rE5UR.js → copy-button-EhEBcNP9.js} +2 -24
- package/dist/copy-button-EhEBcNP9.js.map +1 -0
- package/dist/{dashboard-Uo2nRTH0.js → dashboard-Ba2uhKXD.js} +2 -2
- package/dist/{dashboard-Uo2nRTH0.js.map → dashboard-Ba2uhKXD.js.map} +1 -1
- package/dist/getAddressElementOptions.js +1 -1
- package/dist/getAmountInLargestCurrencyUnit.js +1 -1
- package/dist/getAmountInSmallestCurrencyUnit.js +1 -1
- package/dist/getAmountWithAppliedTax.js +1 -1
- package/dist/getFormattedAmount.js +1 -1
- package/dist/getFormattedDiscountedAmount.js +1 -1
- package/dist/getFormattedDiscountedPercentage.js +1 -1
- package/dist/getFormattedTaxAmount.js +1 -1
- package/dist/getFormattedTipAmount.js +1 -1
- package/dist/getQrCodeValue.js +1 -1
- package/dist/getTaxAmount.js +1 -1
- package/dist/getTipAmount.js +1 -1
- package/dist/hasAmountToPay.js +1 -1
- package/dist/index-CKJlawqs.js +19 -0
- package/dist/index-CKJlawqs.js.map +1 -0
- package/dist/{index-BbPuNCbC.js → index-CajHy3NQ.js} +24 -21
- package/dist/index-CajHy3NQ.js.map +1 -0
- package/dist/index.js +28 -16
- package/dist/index.js.map +1 -1
- package/dist/main-Bqi97Os6.js +5 -0
- package/dist/main-Bqi97Os6.js.map +1 -0
- package/dist/{renderFunctions-dslScg6B.js → renderFunctions-B9mVn_ag.js} +4 -4
- package/dist/{renderFunctions-dslScg6B.js.map → renderFunctions-B9mVn_ag.js.map} +1 -1
- package/dist/renderFunctions-SFUBbGqd.js +67 -0
- package/dist/renderFunctions-SFUBbGqd.js.map +1 -0
- package/dist/{useAccountsApi-C9W3YdvO.js → useAccountsApi-CZyJ4R8Z.js} +3 -3
- package/dist/{useAccountsApi-C9W3YdvO.js.map → useAccountsApi-CZyJ4R8Z.js.map} +1 -1
- package/dist/useBusinessTypesApi-CS2aPq7Y.js +27 -0
- package/dist/useBusinessTypesApi-CS2aPq7Y.js.map +1 -0
- package/dist/useCheckoutSettingsApi-D1ZvMA4B.js +28 -0
- package/dist/useCheckoutSettingsApi-D1ZvMA4B.js.map +1 -0
- package/dist/useCountriesApi-ClXgwNgC.js +17 -0
- package/dist/useCountriesApi-ClXgwNgC.js.map +1 -0
- package/dist/useExportsApi-C1wjoVYy.js +19 -0
- package/dist/useExportsApi-C1wjoVYy.js.map +1 -0
- package/dist/{useExportsApi-B0u8EW7i.js → useExportsApi-DA6ThV9b.js} +2 -2
- package/dist/{useExportsApi-B0u8EW7i.js.map → useExportsApi-DA6ThV9b.js.map} +1 -1
- package/dist/useFetchData-8LLdmA74.js +22 -0
- package/dist/useFetchData-8LLdmA74.js.map +1 -0
- package/dist/{useIntegrationsApi-AF3A7YvI.js → useIntegrationsApi-BqU-lJql.js} +2 -2
- package/dist/{useIntegrationsApi-AF3A7YvI.js.map → useIntegrationsApi-BqU-lJql.js.map} +1 -1
- package/dist/{usePaymentApi-qo71Ol63.js → usePaymentApi-BzB3rzNe.js} +2 -2
- package/dist/{usePaymentApi-qo71Ol63.js.map → usePaymentApi-BzB3rzNe.js.map} +1 -1
- package/dist/{usePaymentApi-BGN0_zsw.js → usePaymentApi-C8fRdHmK.js} +2 -2
- package/dist/{usePaymentApi-BGN0_zsw.js.map → usePaymentApi-C8fRdHmK.js.map} +1 -1
- package/dist/{usePaymentApi-CUHHIncv.js → usePaymentApi-gvPmTOWg.js} +2 -2
- package/dist/{usePaymentApi-CUHHIncv.js.map → usePaymentApi-gvPmTOWg.js.map} +1 -1
- package/dist/usePaymentsApi-C2xbgHmw.js +20 -0
- package/dist/usePaymentsApi-C2xbgHmw.js.map +1 -0
- package/dist/{usePlatformApi-KlkpSYlq.js → usePlatformApi-Dug1pxaH.js} +3 -3
- package/dist/{usePlatformApi-KlkpSYlq.js.map → usePlatformApi-Dug1pxaH.js.map} +1 -1
- package/dist/useRazorpayPayment.js +2 -2
- package/dist/useRecurringPaymentsApi-CkxjkZd2.js +30 -0
- package/dist/useRecurringPaymentsApi-CkxjkZd2.js.map +1 -0
- package/dist/useRecurringPaymentsApi-dbdBrh4V.js +20 -0
- package/dist/useRecurringPaymentsApi-dbdBrh4V.js.map +1 -0
- package/dist/useRecurringSettingsApi-B_kTDES9.js +28 -0
- package/dist/useRecurringSettingsApi-B_kTDES9.js.map +1 -0
- package/dist/useRefundsApi-DSMKTWIQ.js +20 -0
- package/dist/useRefundsApi-DSMKTWIQ.js.map +1 -0
- package/dist/useSplitTransfersApi-DlRs4wYh.js +36 -0
- package/dist/useSplitTransfersApi-DlRs4wYh.js.map +1 -0
- package/dist/useTaxesApi-BuPeVUxI.js +60 -0
- package/dist/useTaxesApi-BuPeVUxI.js.map +1 -0
- package/dist/useVpasApi-wicZ6o_z.js +40 -0
- package/dist/useVpasApi-wicZ6o_z.js.map +1 -0
- package/dist/v2/AccountsDashboard.js +475 -0
- package/dist/v2/AccountsDashboard.js.map +1 -0
- package/dist/v2/AdminCancelRecurringPaymentButton.js +52 -0
- package/dist/v2/AdminCancelRecurringPaymentButton.js.map +1 -0
- package/dist/v2/CashPaymentButton.js +58 -0
- package/dist/v2/CashPaymentButton.js.map +1 -0
- package/dist/v2/ConfirmCashPaymentButton.js +98 -0
- package/dist/v2/ConfirmCashPaymentButton.js.map +1 -0
- package/dist/v2/CustomerCancelRecurringPaymentForm.js +83 -0
- package/dist/v2/CustomerCancelRecurringPaymentForm.js.map +1 -0
- package/dist/v2/ManualUpiConnect.js +206 -0
- package/dist/v2/ManualUpiConnect.js.map +1 -0
- package/dist/v2/ManualUpiPayment.js +232 -0
- package/dist/v2/ManualUpiPayment.js.map +1 -0
- package/dist/v2/ManualUpiPaymentConfirmButton.js +151 -0
- package/dist/v2/ManualUpiPaymentConfirmButton.js.map +1 -0
- package/dist/v2/ManualUpiPaymentRejectButton.js +125 -0
- package/dist/v2/ManualUpiPaymentRejectButton.js.map +1 -0
- package/dist/v2/PaymentKindRestrictionAlert.js +31 -0
- package/dist/v2/PaymentKindRestrictionAlert.js.map +1 -0
- package/dist/v2/PaymentsDashboard.js +579 -0
- package/dist/v2/PaymentsDashboard.js.map +1 -0
- package/dist/v2/PayoutsDashboard.js +514 -0
- package/dist/v2/PayoutsDashboard.js.map +1 -0
- package/dist/v2/PayoutsPage.js +142 -0
- package/dist/v2/PayoutsPage.js.map +1 -0
- package/dist/v2/RazorpayConnect.js +115 -0
- package/dist/v2/RazorpayConnect.js.map +1 -0
- package/dist/v2/RazorpayLinkedAccountForm.js +172 -0
- package/dist/v2/RazorpayLinkedAccountForm.js.map +1 -0
- package/dist/v2/RazorpayPaymentButton.js +143 -0
- package/dist/v2/RazorpayPaymentButton.js.map +1 -0
- package/dist/v2/RecurringPaymentSettings.js +100 -0
- package/dist/v2/RecurringPaymentSettings.js.map +1 -0
- package/dist/v2/RefundsDashboard.js +490 -0
- package/dist/v2/RefundsDashboard.js.map +1 -0
- package/dist/v2/SplitTransfersDashboard.js +922 -0
- package/dist/v2/SplitTransfersDashboard.js.map +1 -0
- package/dist/v2/StripeCheckoutSetting.js +64 -0
- package/dist/v2/StripeCheckoutSetting.js.map +1 -0
- package/dist/v2/StripeConnect.js +363 -0
- package/dist/v2/StripeConnect.js.map +1 -0
- package/dist/v2/StripeManage.js +48 -0
- package/dist/v2/StripeManage.js.map +1 -0
- package/dist/v2/TaxesDashboard.js +317 -0
- package/dist/v2/TaxesDashboard.js.map +1 -0
- package/dist/v2/index.js +94 -0
- package/dist/v2/index.js.map +1 -0
- package/package.json +33 -21
- package/dist/CopyButtonWrapper-DkI2F6Ty.js.map +0 -1
- package/dist/ExportModal-r0L3_JqO.js.map +0 -1
- package/dist/cjs/CopyButtonWrapper-DZ9rE5UR.js.map +0 -1
- package/dist/cjs/ExportModal-Bo-VRErR.js.map +0 -1
- package/dist/cjs/index-C3dlLi3r.js.map +0 -1
- package/dist/index-BbPuNCbC.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExportModal-X-AJPdkc.js","sources":["../app/javascript/src/v2/components/Common/ExportModal.jsx"],"sourcesContent":["import { useEffect, useMemo, useState } from \"react\";\n\nimport { Button, Dialog, Typography } from \"@bigbinary/neeto-atoms\";\nimport { isPresent, camelToSnakeCase } from \"neetocist\";\nimport { Download } from \"neetoicons\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useExportsData } from \"hooks/reactQuery/useExportsApi\";\nimport { getQueryParams } from \"neetocommons/utils\";\nimport exportChannel from \"src/channels/exportChannel\";\nimport { uuidV4 } from \"utils\";\n\nconst ExportModal = ({\n filters,\n dashboardKind,\n holdableIds,\n sortProperties,\n isExportModalOpen,\n setIsExportModalOpen,\n}) => {\n const { t } = useTranslation();\n const [downloadUrl, setDownloadUrl] = useState(\"\");\n const [isGenerating, setIsGenerating] = useState(false);\n\n const { tab = \"all\" } = getQueryParams();\n\n const { mutate: exportsData } = useExportsData();\n\n const token = useMemo(\n () => `${dashboardKind}-report-${uuidV4()}`,\n [dashboardKind]\n );\n\n const receivedCallback = data => {\n if (!data.download_url) return;\n setDownloadUrl(data.download_url);\n setIsGenerating(false);\n };\n\n useEffect(() => {\n if (isExportModalOpen) {\n const channel = exportChannel(token, receivedCallback);\n setDownloadUrl(\"\");\n setIsGenerating(false);\n\n return () => {\n channel.disconnected();\n };\n }\n\n return undefined;\n }, [isExportModalOpen, token]);\n\n const onClose = () => setIsExportModalOpen(false);\n\n const handleExport = () => {\n setDownloadUrl(\"\");\n setIsGenerating(true);\n const payload = mergeLeft(sortProperties, {\n token,\n filters,\n tab,\n holdableIds,\n dashboard: camelToSnakeCase(dashboardKind),\n });\n\n exportsData(payload);\n };\n\n return (\n <Dialog {...{ onClose }} isOpen={isExportModalOpen}>\n <Dialog.Header>\n <Dialog.Title>\n {t(`neetoPayments.export.title.${dashboardKind}`)}\n </Dialog.Title>\n </Dialog.Header>\n <Dialog.Body>\n {isGenerating ? (\n <Typography variant=\"body2\">\n {t(\"neetoPayments.export.pleaseWait\")}\n </Typography>\n ) : (\n <Typography variant=\"body2\">\n {isPresent(downloadUrl)\n ? t(\"neetoPayments.export.fileReady\")\n : t(`neetoPayments.export.download.${dashboardKind}`)}\n </Typography>\n )}\n </Dialog.Body>\n <Dialog.Footer className=\"space-x-2\">\n {isPresent(downloadUrl) ? (\n <Button\n data-testid=\"neeto-payments-download-button\"\n href={downloadUrl}\n icon={Download}\n label={t(\"neetoPayments.common.download\")}\n onClick={onClose}\n />\n ) : (\n <>\n <Button\n data-testid=\"cancel-button\"\n disabled={isGenerating}\n label={t(\"neetoPayments.common.cancel\")}\n variant=\"outline\"\n onClick={onClose}\n />\n <Button\n data-testid=\"neeto-payments-export-button\"\n disabled={isGenerating}\n label={t(\"neetoPayments.common.export\")}\n loading={isGenerating}\n onClick={handleExport}\n />\n </>\n )}\n </Dialog.Footer>\n </Dialog>\n );\n};\n\nexport default ExportModal;\n"],"names":["ExportModal","filters","dashboardKind","holdableIds","sortProperties","isExportModalOpen","setIsExportModalOpen","t","useTranslation","downloadUrl","setDownloadUrl","useState","isGenerating","setIsGenerating","tab","getQueryParams","mutate","exportsData","useExportsData","token","useMemo","uuidV4","receivedCallback","data","download_url","useEffect","channel","exportChannel","disconnected","undefined","onClose","handleExport","payload","mergeLeft","dashboard","camelToSnakeCase","_jsxs","Dialog","isOpen","children","_jsx","Header","Title","Body","Typography","variant","isPresent","Footer","className","Button","href","icon","Download","label","onClick","_Fragment","disabled","loading"],"mappings":"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"}
|
package/dist/ManualUpiConnect.js
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
import { Typography, Table, Alert, Spinner } from '@bigbinary/neetoui';
|
|
2
|
-
import {
|
|
3
|
-
import { useMutationWithInvalidation } from 'neetocommons/react-utils';
|
|
4
|
-
import axios from 'axios';
|
|
5
|
-
import { B as BASE_URL } from './index-BbPuNCbC.js';
|
|
6
|
-
import { Q as QUERY_KEYS } from './queryConstants-8c7Nd8ML.js';
|
|
2
|
+
import { u as useCreateVpa, a as useDestroyVpa, b as useFetchVpas } from './useVpasApi-wicZ6o_z.js';
|
|
7
3
|
import CardLayout from '@bigbinary/neeto-molecules/CardLayout';
|
|
8
4
|
import { Form, Input, ActionBlock } from '@bigbinary/neetoui/formik';
|
|
9
5
|
import { useTranslation, Trans } from 'react-i18next';
|
|
@@ -15,41 +11,14 @@ import { useState } from 'react';
|
|
|
15
11
|
import { isEmpty } from 'ramda';
|
|
16
12
|
import { dateFormat } from 'neetocommons/utils';
|
|
17
13
|
import MoreDropdown from '@bigbinary/neeto-molecules/MoreDropdown';
|
|
14
|
+
import '@tanstack/react-query';
|
|
15
|
+
import 'neetocommons/react-utils';
|
|
16
|
+
import 'axios';
|
|
17
|
+
import './index-CajHy3NQ.js';
|
|
18
18
|
import 'neetocommons/constants';
|
|
19
19
|
import 'decimal.js';
|
|
20
20
|
import 'neetocist';
|
|
21
|
-
|
|
22
|
-
const list = holdableId => axios.get(`${BASE_URL}/api/v1/manual_upi/vpas`, {
|
|
23
|
-
params: {
|
|
24
|
-
holdableId
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
const create = payload => axios.post(`${BASE_URL}/api/v1/manual_upi/vpas`, payload);
|
|
28
|
-
const destroy = ({
|
|
29
|
-
id,
|
|
30
|
-
holdableId
|
|
31
|
-
}) => axios.delete(`${BASE_URL}/api/v1/manual_upi/vpas/${id}`, {
|
|
32
|
-
params: {
|
|
33
|
-
holdableId
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
const vpasApi = {
|
|
37
|
-
list,
|
|
38
|
-
create,
|
|
39
|
-
destroy
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
const useFetchVpas = (holdableId, options = {}) => useQuery({
|
|
43
|
-
queryKey: [QUERY_KEYS.VPAS_LIST, holdableId],
|
|
44
|
-
queryFn: () => vpasApi.list(holdableId),
|
|
45
|
-
...options
|
|
46
|
-
});
|
|
47
|
-
const useCreateVpa = (keysToInvalidateOnCreate = []) => useMutationWithInvalidation(vpasApi.create, {
|
|
48
|
-
keysToInvalidate: [[QUERY_KEYS.VPAS_LIST], ...keysToInvalidateOnCreate]
|
|
49
|
-
});
|
|
50
|
-
const useDestroyVpa = (keysToInvalidateOnDelete = []) => useMutationWithInvalidation(vpasApi.destroy, {
|
|
51
|
-
keysToInvalidate: [[QUERY_KEYS.VPAS_LIST], ...keysToInvalidateOnDelete]
|
|
52
|
-
});
|
|
21
|
+
import './queryConstants-8c7Nd8ML.js';
|
|
53
22
|
|
|
54
23
|
const VALIDATION_SCHEMA = yup.object({
|
|
55
24
|
upiId: yup.string().matches(/^[a-zA-Z0-9][a-zA-Z0-9._-]{2,30}@[a-zA-Z][a-zA-Z0-9]{2,20}$/, t("neetoPayments.upi.form.validation.invalidUpi")).required(t("neetoPayments.upi.form.validation.required"))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ManualUpiConnect.js","sources":["../app/javascript/src/apis/manual_upi/vpas.js","../app/javascript/src/hooks/reactQuery/manualUpi/useVpasApi.js","../app/javascript/src/components/ManualUpiConnect/constants.js","../app/javascript/src/components/ManualUpiConnect/Add.jsx","../app/javascript/src/components/ManualUpiConnect/utils.jsx","../app/javascript/src/components/ManualUpiConnect/List.jsx","../app/javascript/src/components/ManualUpiConnect/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/constants\";\n\nconst list = holdableId =>\n axios.get(`${BASE_URL}/api/v1/manual_upi/vpas`, {\n params: { holdableId },\n });\n\nconst create = payload =>\n axios.post(`${BASE_URL}/api/v1/manual_upi/vpas`, payload);\n\nconst destroy = ({ id, holdableId }) =>\n axios.delete(`${BASE_URL}/api/v1/manual_upi/vpas/${id}`, {\n params: { holdableId },\n });\n\nconst vpasApi = { list, create, destroy };\n\nexport default vpasApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport vpasApi from \"apis/manual_upi/vpas\";\nimport { QUERY_KEYS } from \"src/common/queryConstants\";\n\nexport const useFetchVpas = (holdableId, options = {}) =>\n useQuery({\n queryKey: [QUERY_KEYS.VPAS_LIST, holdableId],\n queryFn: () => vpasApi.list(holdableId),\n ...options,\n });\n\nexport const useCreateVpa = (keysToInvalidateOnCreate = []) =>\n useMutationWithInvalidation(vpasApi.create, {\n keysToInvalidate: [[QUERY_KEYS.VPAS_LIST], ...keysToInvalidateOnCreate],\n });\n\nexport const useDestroyVpa = (keysToInvalidateOnDelete = []) =>\n useMutationWithInvalidation(vpasApi.destroy, {\n keysToInvalidate: [[QUERY_KEYS.VPAS_LIST], ...keysToInvalidateOnDelete],\n });\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const VALIDATION_SCHEMA = yup.object({\n upiId: yup\n .string()\n .matches(\n /^[a-zA-Z0-9][a-zA-Z0-9._-]{2,30}@[a-zA-Z][a-zA-Z0-9]{2,20}$/,\n t(\"neetoPayments.upi.form.validation.invalidUpi\")\n )\n .required(t(\"neetoPayments.upi.form.validation.required\")),\n});\n","import CardLayout from \"neetomolecules/CardLayout\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useCreateVpa } from \"hooks/reactQuery/manualUpi/useVpasApi\";\n\nimport { VALIDATION_SCHEMA } from \"./constants\";\n\nconst Add = ({ holdableId, keysToInvalidateOnCreate }) => {\n const { t } = useTranslation();\n const history = useHistory();\n const { isPending: isCreatingVpa, mutate: createVpa } = useCreateVpa(\n keysToInvalidateOnCreate\n );\n\n return (\n <Form\n className=\"w-full\"\n formikProps={{\n initialValues: { upiId: \"\" },\n onSubmit: (values, { resetForm }) => {\n createVpa({ holdableId, address: values.upiId });\n resetForm();\n },\n validationSchema: VALIDATION_SCHEMA,\n }}\n >\n {({ dirty }) => (\n <CardLayout\n actionBlock={\n <ActionBlock\n cancelButtonProps={{ onClick: history.goBack }}\n isSubmitting={isCreatingVpa}\n submitButtonProps={{\n label: t(\"neetoPayments.upi.form.add\"),\n disabled: !dirty || isCreatingVpa,\n }}\n />\n }\n >\n <Input\n className=\"w-full\"\n label={t(\"neetoPayments.upi.form.enterUpi\")}\n name=\"upiId\"\n placeholder={t(\"neetoPayments.upi.form.enterUpi\")}\n />\n </CardLayout>\n )}\n </Form>\n );\n};\n\nexport default Add;\n","import { t } from \"i18next\";\n\nimport { dateFormat } from \"neetocommons/utils\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography } from \"neetoui\";\n\nexport const getColumnData = handleDeleteClick => [\n {\n title: t(\"neetoPayments.common.upiId\"),\n dataIndex: \"address\",\n key: \"address\",\n width: 272,\n render: (_, upiId) => (\n <div className=\"flex items-center justify-between gap-3\">\n <Typography className=\"w-4/5\" style=\"body2\">\n {upiId.address}\n </Typography>\n <MoreDropdown\n dropdownButtonProps={{ \"data-testid\": \"upi-more-dropdown\" }}\n dropdownProps={{ strategy: \"fixed\" }}\n menuItems={[\n {\n key: \"delete-meeting\",\n label: t(\"neetoPayments.common.delete\"),\n onClick: () => handleDeleteClick(upiId),\n \"data-testid\": \"menu-dropdown-delete-btn\",\n },\n ]}\n />\n </div>\n ),\n },\n {\n title: t(\"neetoPayments.common.createdAt\"),\n dataIndex: \"createdAt\",\n key: \"createdAt\",\n render: dateFormat.dateTime,\n },\n];\n","import { useState } from \"react\";\n\nimport { Alert, Table } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { useDestroyVpa } from \"hooks/reactQuery/manualUpi/useVpasApi\";\n\nimport { getColumnData } from \"./utils\";\n\nconst List = ({ holdableId, upiIds, keysToInvalidateOnDelete }) => {\n const { t } = useTranslation();\n\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n const [selectedUpiId, setSelectedUpiId] = useState({});\n\n const { mutate: deleteVpa } = useDestroyVpa(keysToInvalidateOnDelete);\n\n const handleOpenDeleteModal = id => {\n setSelectedUpiId(id);\n setIsAlertOpen(true);\n };\n\n const handleAlertClose = () => {\n setSelectedUpiId({});\n setIsAlertOpen(false);\n };\n\n const handleAlertSubmit = () => {\n deleteVpa({ id: selectedUpiId?.id, holdableId });\n setIsAlertOpen(false);\n };\n\n if (isEmpty(upiIds)) {\n return null;\n }\n\n return (\n <div className=\"w-full max-w-3xl mx-auto\">\n <Table\n columnData={getColumnData(handleOpenDeleteModal)}\n rowData={upiIds}\n />\n <Alert\n isOpen={isAlertOpen}\n title={t(\"neetoPayments.upi.alert.title\")}\n message={\n <Trans\n components={{ b: <strong /> }}\n i18nKey=\"neetoPayments.upi.alert.message\"\n values={{ upiId: selectedUpiId.address }}\n />\n }\n onClose={handleAlertClose}\n onSubmit={handleAlertSubmit}\n />\n </div>\n );\n};\n\nexport default List;\n","import { Spinner } from \"neetoui\";\n\nimport { useFetchVpas } from \"hooks/reactQuery/manualUpi/useVpasApi\";\n\nimport Add from \"./Add\";\nimport List from \"./List\";\n\nconst ManualUpiConnect = ({\n holdableId,\n keysToInvalidateOnDelete = [],\n keysToInvalidateOnCreate = [],\n}) => {\n const { data: { vpas: upiIds = [] } = {}, isLoading } =\n useFetchVpas(holdableId);\n\n if (isLoading) {\n return (\n <div className=\"flex items-center justify-center w-full h-full\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"flex flex-col items-start w-full\">\n {upiIds.length < 3 && (\n <Add {...{ holdableId, keysToInvalidateOnCreate }} />\n )}\n <List {...{ holdableId, keysToInvalidateOnDelete, upiIds }} />\n </div>\n );\n};\n\nexport default ManualUpiConnect;\n"],"names":["list","holdableId","axios","get","BASE_URL","params","create","payload","post","destroy","id","delete","vpasApi","useFetchVpas","options","useQuery","queryKey","QUERY_KEYS","VPAS_LIST","queryFn","useCreateVpa","keysToInvalidateOnCreate","useMutationWithInvalidation","keysToInvalidate","useDestroyVpa","keysToInvalidateOnDelete","VALIDATION_SCHEMA","yup","object","upiId","string","matches","t","required","Add","useTranslation","history","useHistory","isPending","isCreatingVpa","mutate","createVpa","_jsx","Form","className","formikProps","initialValues","onSubmit","values","resetForm","address","validationSchema","children","dirty","CardLayout","actionBlock","ActionBlock","cancelButtonProps","onClick","goBack","isSubmitting","submitButtonProps","label","disabled","Input","name","placeholder","getColumnData","handleDeleteClick","title","dataIndex","key","width","render","_","_jsxs","Typography","style","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","menuItems","dateFormat","dateTime","List","upiIds","isAlertOpen","setIsAlertOpen","useState","selectedUpiId","setSelectedUpiId","deleteVpa","handleOpenDeleteModal","handleAlertClose","handleAlertSubmit","isEmpty","Table","columnData","rowData","Alert","isOpen","message","Trans","components","b","i18nKey","onClose","ManualUpiConnect","data","vpas","isLoading","Spinner","length"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ManualUpiConnect.js","sources":["../app/javascript/src/components/ManualUpiConnect/constants.js","../app/javascript/src/components/ManualUpiConnect/Add.jsx","../app/javascript/src/components/ManualUpiConnect/utils.jsx","../app/javascript/src/components/ManualUpiConnect/List.jsx","../app/javascript/src/components/ManualUpiConnect/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nexport const VALIDATION_SCHEMA = yup.object({\n upiId: yup\n .string()\n .matches(\n /^[a-zA-Z0-9][a-zA-Z0-9._-]{2,30}@[a-zA-Z][a-zA-Z0-9]{2,20}$/,\n t(\"neetoPayments.upi.form.validation.invalidUpi\")\n )\n .required(t(\"neetoPayments.upi.form.validation.required\")),\n});\n","import CardLayout from \"neetomolecules/CardLayout\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { useCreateVpa } from \"hooks/reactQuery/manualUpi/useVpasApi\";\n\nimport { VALIDATION_SCHEMA } from \"./constants\";\n\nconst Add = ({ holdableId, keysToInvalidateOnCreate }) => {\n const { t } = useTranslation();\n const history = useHistory();\n const { isPending: isCreatingVpa, mutate: createVpa } = useCreateVpa(\n keysToInvalidateOnCreate\n );\n\n return (\n <Form\n className=\"w-full\"\n formikProps={{\n initialValues: { upiId: \"\" },\n onSubmit: (values, { resetForm }) => {\n createVpa({ holdableId, address: values.upiId });\n resetForm();\n },\n validationSchema: VALIDATION_SCHEMA,\n }}\n >\n {({ dirty }) => (\n <CardLayout\n actionBlock={\n <ActionBlock\n cancelButtonProps={{ onClick: history.goBack }}\n isSubmitting={isCreatingVpa}\n submitButtonProps={{\n label: t(\"neetoPayments.upi.form.add\"),\n disabled: !dirty || isCreatingVpa,\n }}\n />\n }\n >\n <Input\n className=\"w-full\"\n label={t(\"neetoPayments.upi.form.enterUpi\")}\n name=\"upiId\"\n placeholder={t(\"neetoPayments.upi.form.enterUpi\")}\n />\n </CardLayout>\n )}\n </Form>\n );\n};\n\nexport default Add;\n","import { t } from \"i18next\";\n\nimport { dateFormat } from \"neetocommons/utils\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography } from \"neetoui\";\n\nexport const getColumnData = handleDeleteClick => [\n {\n title: t(\"neetoPayments.common.upiId\"),\n dataIndex: \"address\",\n key: \"address\",\n width: 272,\n render: (_, upiId) => (\n <div className=\"flex items-center justify-between gap-3\">\n <Typography className=\"w-4/5\" style=\"body2\">\n {upiId.address}\n </Typography>\n <MoreDropdown\n dropdownButtonProps={{ \"data-testid\": \"upi-more-dropdown\" }}\n dropdownProps={{ strategy: \"fixed\" }}\n menuItems={[\n {\n key: \"delete-meeting\",\n label: t(\"neetoPayments.common.delete\"),\n onClick: () => handleDeleteClick(upiId),\n \"data-testid\": \"menu-dropdown-delete-btn\",\n },\n ]}\n />\n </div>\n ),\n },\n {\n title: t(\"neetoPayments.common.createdAt\"),\n dataIndex: \"createdAt\",\n key: \"createdAt\",\n render: dateFormat.dateTime,\n },\n];\n","import { useState } from \"react\";\n\nimport { Alert, Table } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { useDestroyVpa } from \"hooks/reactQuery/manualUpi/useVpasApi\";\n\nimport { getColumnData } from \"./utils\";\n\nconst List = ({ holdableId, upiIds, keysToInvalidateOnDelete }) => {\n const { t } = useTranslation();\n\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n const [selectedUpiId, setSelectedUpiId] = useState({});\n\n const { mutate: deleteVpa } = useDestroyVpa(keysToInvalidateOnDelete);\n\n const handleOpenDeleteModal = id => {\n setSelectedUpiId(id);\n setIsAlertOpen(true);\n };\n\n const handleAlertClose = () => {\n setSelectedUpiId({});\n setIsAlertOpen(false);\n };\n\n const handleAlertSubmit = () => {\n deleteVpa({ id: selectedUpiId?.id, holdableId });\n setIsAlertOpen(false);\n };\n\n if (isEmpty(upiIds)) {\n return null;\n }\n\n return (\n <div className=\"w-full max-w-3xl mx-auto\">\n <Table\n columnData={getColumnData(handleOpenDeleteModal)}\n rowData={upiIds}\n />\n <Alert\n isOpen={isAlertOpen}\n title={t(\"neetoPayments.upi.alert.title\")}\n message={\n <Trans\n components={{ b: <strong /> }}\n i18nKey=\"neetoPayments.upi.alert.message\"\n values={{ upiId: selectedUpiId.address }}\n />\n }\n onClose={handleAlertClose}\n onSubmit={handleAlertSubmit}\n />\n </div>\n );\n};\n\nexport default List;\n","import { Spinner } from \"neetoui\";\n\nimport { useFetchVpas } from \"hooks/reactQuery/manualUpi/useVpasApi\";\n\nimport Add from \"./Add\";\nimport List from \"./List\";\n\nconst ManualUpiConnect = ({\n holdableId,\n keysToInvalidateOnDelete = [],\n keysToInvalidateOnCreate = [],\n}) => {\n const { data: { vpas: upiIds = [] } = {}, isLoading } =\n useFetchVpas(holdableId);\n\n if (isLoading) {\n return (\n <div className=\"flex items-center justify-center w-full h-full\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"flex flex-col items-start w-full\">\n {upiIds.length < 3 && (\n <Add {...{ holdableId, keysToInvalidateOnCreate }} />\n )}\n <List {...{ holdableId, keysToInvalidateOnDelete, upiIds }} />\n </div>\n );\n};\n\nexport default ManualUpiConnect;\n"],"names":["VALIDATION_SCHEMA","yup","object","upiId","string","matches","t","required","Add","holdableId","keysToInvalidateOnCreate","useTranslation","history","useHistory","isPending","isCreatingVpa","mutate","createVpa","useCreateVpa","_jsx","Form","className","formikProps","initialValues","onSubmit","values","resetForm","address","validationSchema","children","dirty","CardLayout","actionBlock","ActionBlock","cancelButtonProps","onClick","goBack","isSubmitting","submitButtonProps","label","disabled","Input","name","placeholder","getColumnData","handleDeleteClick","title","dataIndex","key","width","render","_","_jsxs","Typography","style","MoreDropdown","dropdownButtonProps","dropdownProps","strategy","menuItems","dateFormat","dateTime","List","upiIds","keysToInvalidateOnDelete","isAlertOpen","setIsAlertOpen","useState","selectedUpiId","setSelectedUpiId","deleteVpa","useDestroyVpa","handleOpenDeleteModal","id","handleAlertClose","handleAlertSubmit","isEmpty","Table","columnData","rowData","Alert","isOpen","message","Trans","components","b","i18nKey","onClose","ManualUpiConnect","data","vpas","isLoading","useFetchVpas","Spinner","length"],"mappings":"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"}
|
package/dist/ManualUpiPayment.js
CHANGED
|
@@ -7,8 +7,8 @@ import { Form, Input, ActionBlock } from '@bigbinary/neetoui/formik';
|
|
|
7
7
|
import QRCodeImage from 'qrcode.react';
|
|
8
8
|
import { pluck } from 'ramda';
|
|
9
9
|
import { useTranslation } from 'react-i18next';
|
|
10
|
-
import { u as useCreateUpiPayment } from './usePaymentApi-
|
|
11
|
-
import { k as getQrCodeValue } from './index-
|
|
10
|
+
import { u as useCreateUpiPayment } from './usePaymentApi-C8fRdHmK.js';
|
|
11
|
+
import { k as getQrCodeValue } from './index-CajHy3NQ.js';
|
|
12
12
|
import { t } from 'i18next';
|
|
13
13
|
import * as yup from 'yup';
|
|
14
14
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
@@ -207,6 +207,7 @@ const ManualUpiPayment = ({
|
|
|
207
207
|
}), /*#__PURE__*/jsx("input", {
|
|
208
208
|
accept: ACCEPTED_SCREENSHOT_FORMATS,
|
|
209
209
|
className: "hidden",
|
|
210
|
+
"data-testid": "manual-upi-screenshot-upload-input-field",
|
|
210
211
|
ref: fileInputRef,
|
|
211
212
|
type: "file",
|
|
212
213
|
onChange: handleScreenshotSelect
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ManualUpiPayment.js","sources":["../app/javascript/src/components/ManualUpiPayment/constants.js","../app/javascript/src/components/ManualUpiPayment/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { isPresent, isNotPresent } from \"neetocist\";\nimport * as yup from \"yup\";\n\nexport const ACCEPTED_SCREENSHOT_FORMATS = \"image/png,image/jpeg,image/jpg\";\n\nexport const MAX_SCREENSHOT_SIZE_MB = 5;\n\nexport const DIRECT_UPLOAD_URL = \"/rails/active_storage/direct_uploads\";\n\nexport const INITIAL_VALUES = { identifier: \"\" };\n\nexport const buildValidationSchema = screenshotFile =>\n yup.object({\n identifier: yup\n .number()\n .typeError(\n t(\"neetoPayments.validations.invalidField\", {\n entity: t(\"neetoPayments.common.transactionId\"),\n })\n )\n .nullable()\n .transform((value, originalValue) =>\n originalValue === \"\" ? null : value\n )\n .test(\n \"identifier-or-screenshot\",\n t(\"neetoPayments.upi.payment.transaction.identifierOrScreenshot\"),\n value => isPresent(value) || isPresent(screenshotFile)\n )\n .test(\n \"is-integer\",\n t(\"neetoPayments.validations.invalidField\", {\n entity: t(\"neetoPayments.common.transactionId\"),\n }),\n value => isNotPresent(value) || Number.isInteger(value)\n )\n .test(\n \"len\",\n t(\"neetoPayments.validations.length\", { length: 12 }),\n value => isNotPresent(value) || value?.toString().length === 12\n ),\n });\n","import { useRef, useState, useMemo, useEffect } from \"react\";\n\nimport { DirectUpload } from \"@rails/activestorage\";\nimport { noop, isPresent } from \"neetocist\";\nimport { Close } from \"neetoicons\";\nimport { Button, Toastr, Typography } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport QRCodeImage from \"qrcode.react\";\nimport { pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateUpiPayment } from \"hooks/reactQuery/manualUpi/usePaymentApi\";\nimport { getQrCodeValue } from \"utils\";\n\nimport {\n buildValidationSchema,\n ACCEPTED_SCREENSHOT_FORMATS,\n MAX_SCREENSHOT_SIZE_MB,\n DIRECT_UPLOAD_URL,\n INITIAL_VALUES,\n} from \"./constants\";\n\nconst ManualUpiPayment = ({\n fee,\n payableId,\n tip,\n amount,\n discountCode,\n customAmount,\n handleCancel,\n payableType = null,\n onBeforePayment = noop,\n onFailedPayment = noop,\n onSuccessfulPayment = noop,\n}) => {\n const { t } = useTranslation();\n const fileInputRef = useRef(null);\n const [screenshotFile, setScreenshotFile] = useState(null);\n const [isUploading, setIsUploading] = useState(false);\n\n const screenshotPreview = useMemo(\n () => (screenshotFile ? URL.createObjectURL(screenshotFile) : null),\n [screenshotFile]\n );\n\n useEffect(\n () => () => {\n if (screenshotPreview) URL.revokeObjectURL(screenshotPreview);\n },\n [screenshotPreview]\n );\n\n const vpaIds = pluck(\"address\", fee?.vpas);\n const amountToUpi = customAmount || amount;\n\n const { isPending, mutate: createPayment } = useCreateUpiPayment({\n onSuccess: onSuccessfulPayment,\n onError: onFailedPayment,\n });\n\n const validationSchema = useMemo(\n () => buildValidationSchema(screenshotFile),\n [screenshotFile]\n );\n\n const handleScreenshotSelect = event => {\n const file = event.target.files[0];\n if (!file) return;\n\n if (file.size > MAX_SCREENSHOT_SIZE_MB * 1024 * 1024) {\n Toastr.error(\n t(\"neetoPayments.upi.payment.screenshot.tooLarge\", {\n maxSize: MAX_SCREENSHOT_SIZE_MB,\n })\n );\n\n return;\n }\n\n setScreenshotFile(file);\n };\n\n const handleRemoveScreenshot = () => {\n setScreenshotFile(null);\n if (fileInputRef.current) fileInputRef.current.value = \"\";\n };\n\n const uploadScreenshot = file =>\n new Promise((resolve, reject) => {\n const upload = new DirectUpload(file, DIRECT_UPLOAD_URL);\n upload.create((error, blob) => {\n if (error) reject(error);\n else resolve(blob.signed_id);\n });\n });\n\n const handleSubmit = async values => {\n onBeforePayment();\n\n let paymentScreenshot = null;\n if (screenshotFile) {\n try {\n setIsUploading(true);\n paymentScreenshot = await uploadScreenshot(screenshotFile);\n } catch {\n onFailedPayment();\n\n return;\n } finally {\n setIsUploading(false);\n }\n }\n\n createPayment({\n ...values,\n payableId,\n customAmount,\n payableType,\n discountCode,\n tipAttributes: tip,\n paymentScreenshot,\n });\n };\n\n return (\n <Form\n className=\"space-y-4\"\n formikProps={{\n onSubmit: handleSubmit,\n initialValues: INITIAL_VALUES,\n validationSchema,\n }}\n >\n {({ dirty }) => (\n <>\n <Typography style=\"body1\">\n {t(\"neetoPayments.upi.payment.vpaText\", { count: vpaIds.length })}\n </Typography>\n {isPresent(vpaIds) && (\n <div className=\"grid grid-cols-1 gap-8 gap-y-4 sm:grid-cols-2\">\n {vpaIds.map(vpaId => (\n <div\n className=\"flex flex-col items-center justify-center\"\n key={vpaId}\n >\n <QRCodeImage\n size={256}\n style={{ width: 80, height: 80 }}\n value={getQrCodeValue(vpaId, amountToUpi)}\n />\n <Typography\n className=\"w-full mt-2 text-center wrap-break-word\"\n style=\"body2\"\n >\n {vpaId}\n </Typography>\n </div>\n ))}\n </div>\n )}\n <Input\n label={t(\"neetoPayments.upi.payment.transaction.label\")}\n name=\"identifier\"\n placeholder={t(\"neetoPayments.upi.payment.transaction.placeholder\")}\n type=\"number\"\n />\n <div className=\"flex items-center gap-3\">\n <hr className=\"flex-1 border-gray-300\" />\n <Typography className=\"text-gray-500 uppercase\" style=\"body2\">\n {t(\"neetoPayments.common.or\")}\n </Typography>\n <hr className=\"flex-1 border-gray-300\" />\n </div>\n <div>\n <Typography className=\"mb-2\" style=\"body2\" weight=\"medium\">\n {t(\"neetoPayments.upi.payment.screenshot.label\")}\n </Typography>\n {screenshotPreview ? (\n <div className=\"relative inline-block\">\n <img\n alt={t(\"neetoPayments.upi.payment.screenshot.alt\")}\n className=\"max-h-40 rounded border border-gray-200\"\n src={screenshotPreview}\n />\n <Button\n className=\"absolute -right-2 -top-2 neeto-ui-rounded-full neeto-ui-bg-white neeto-ui-shadow-sm\"\n icon={Close}\n size=\"small\"\n style=\"text\"\n onClick={handleRemoveScreenshot}\n />\n </div>\n ) : (\n <div\n className=\"flex cursor-pointer flex-col items-center justify-center rounded border-2 border-dashed border-gray-300 p-6 transition-colors hover:border-gray-400\"\n role=\"button\"\n tabIndex={0}\n onClick={() => fileInputRef.current?.click()}\n onKeyDown={e => {\n if (e.key === \"Enter\" || e.key === \" \") {\n fileInputRef.current?.click();\n }\n }}\n >\n <i className=\"ri-upload-2-line text-2xl text-gray-400\" />\n <Typography className=\"mt-1 text-gray-500\" style=\"body3\">\n {t(\"neetoPayments.upi.payment.screenshot.uploadText\")}\n </Typography>\n <Typography className=\"text-gray-400\" style=\"nano\">\n {t(\"neetoPayments.upi.payment.screenshot.formatHint\", {\n maxSize: MAX_SCREENSHOT_SIZE_MB,\n })}\n </Typography>\n </div>\n )}\n <input\n accept={ACCEPTED_SCREENSHOT_FORMATS}\n className=\"hidden\"\n ref={fileInputRef}\n type=\"file\"\n onChange={handleScreenshotSelect}\n />\n </div>\n <ActionBlock\n cancelButtonProps={{\n label: t(\"neetoPayments.upi.payment.buttons.back\"),\n onClick: handleCancel,\n disabled: isPending,\n }}\n submitButtonProps={{\n label: t(\"neetoPayments.upi.payment.buttons.submit\"),\n disabled: (!dirty && !screenshotFile) || isPending || isUploading,\n loading: isPending || isUploading,\n }}\n />\n </>\n )}\n </Form>\n );\n};\n\nexport default ManualUpiPayment;\n"],"names":["ACCEPTED_SCREENSHOT_FORMATS","MAX_SCREENSHOT_SIZE_MB","DIRECT_UPLOAD_URL","INITIAL_VALUES","identifier","buildValidationSchema","screenshotFile","yup","object","number","typeError","t","entity","nullable","transform","value","originalValue","test","isPresent","isNotPresent","Number","isInteger","length","toString","ManualUpiPayment","fee","payableId","tip","amount","discountCode","customAmount","handleCancel","payableType","onBeforePayment","noop","onFailedPayment","onSuccessfulPayment","useTranslation","fileInputRef","useRef","setScreenshotFile","useState","isUploading","setIsUploading","screenshotPreview","useMemo","URL","createObjectURL","useEffect","revokeObjectURL","vpaIds","pluck","vpas","amountToUpi","isPending","mutate","createPayment","useCreateUpiPayment","onSuccess","onError","validationSchema","handleScreenshotSelect","event","file","target","files","size","Toastr","error","maxSize","handleRemoveScreenshot","current","uploadScreenshot","Promise","resolve","reject","upload","DirectUpload","create","blob","signed_id","handleSubmit","values","paymentScreenshot","tipAttributes","_jsx","Form","className","formikProps","onSubmit","initialValues","children","dirty","_jsxs","_Fragment","Typography","style","count","map","vpaId","QRCodeImage","width","height","getQrCodeValue","Input","label","name","placeholder","type","weight","alt","src","Button","icon","Close","onClick","role","tabIndex","click","onKeyDown","e","key","accept","ref","onChange","ActionBlock","cancelButtonProps","disabled","submitButtonProps","loading"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ManualUpiPayment.js","sources":["../app/javascript/src/components/ManualUpiPayment/constants.js","../app/javascript/src/components/ManualUpiPayment/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { isPresent, isNotPresent } from \"neetocist\";\nimport * as yup from \"yup\";\n\nexport const ACCEPTED_SCREENSHOT_FORMATS = \"image/png,image/jpeg,image/jpg\";\n\nexport const MAX_SCREENSHOT_SIZE_MB = 5;\n\nexport const DIRECT_UPLOAD_URL = \"/rails/active_storage/direct_uploads\";\n\nexport const INITIAL_VALUES = { identifier: \"\" };\n\nexport const buildValidationSchema = screenshotFile =>\n yup.object({\n identifier: yup\n .number()\n .typeError(\n t(\"neetoPayments.validations.invalidField\", {\n entity: t(\"neetoPayments.common.transactionId\"),\n })\n )\n .nullable()\n .transform((value, originalValue) =>\n originalValue === \"\" ? null : value\n )\n .test(\n \"identifier-or-screenshot\",\n t(\"neetoPayments.upi.payment.transaction.identifierOrScreenshot\"),\n value => isPresent(value) || isPresent(screenshotFile)\n )\n .test(\n \"is-integer\",\n t(\"neetoPayments.validations.invalidField\", {\n entity: t(\"neetoPayments.common.transactionId\"),\n }),\n value => isNotPresent(value) || Number.isInteger(value)\n )\n .test(\n \"len\",\n t(\"neetoPayments.validations.length\", { length: 12 }),\n value => isNotPresent(value) || value?.toString().length === 12\n ),\n });\n","import { useRef, useState, useMemo, useEffect } from \"react\";\n\nimport { DirectUpload } from \"@rails/activestorage\";\nimport { noop, isPresent } from \"neetocist\";\nimport { Close } from \"neetoicons\";\nimport { Button, Toastr, Typography } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport QRCodeImage from \"qrcode.react\";\nimport { pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateUpiPayment } from \"hooks/reactQuery/manualUpi/usePaymentApi\";\nimport { getQrCodeValue } from \"utils\";\n\nimport {\n buildValidationSchema,\n ACCEPTED_SCREENSHOT_FORMATS,\n MAX_SCREENSHOT_SIZE_MB,\n DIRECT_UPLOAD_URL,\n INITIAL_VALUES,\n} from \"./constants\";\n\nconst ManualUpiPayment = ({\n fee,\n payableId,\n tip,\n amount,\n discountCode,\n customAmount,\n handleCancel,\n payableType = null,\n onBeforePayment = noop,\n onFailedPayment = noop,\n onSuccessfulPayment = noop,\n}) => {\n const { t } = useTranslation();\n const fileInputRef = useRef(null);\n const [screenshotFile, setScreenshotFile] = useState(null);\n const [isUploading, setIsUploading] = useState(false);\n\n const screenshotPreview = useMemo(\n () => (screenshotFile ? URL.createObjectURL(screenshotFile) : null),\n [screenshotFile]\n );\n\n useEffect(\n () => () => {\n if (screenshotPreview) URL.revokeObjectURL(screenshotPreview);\n },\n [screenshotPreview]\n );\n\n const vpaIds = pluck(\"address\", fee?.vpas);\n const amountToUpi = customAmount || amount;\n\n const { isPending, mutate: createPayment } = useCreateUpiPayment({\n onSuccess: onSuccessfulPayment,\n onError: onFailedPayment,\n });\n\n const validationSchema = useMemo(\n () => buildValidationSchema(screenshotFile),\n [screenshotFile]\n );\n\n const handleScreenshotSelect = event => {\n const file = event.target.files[0];\n if (!file) return;\n\n if (file.size > MAX_SCREENSHOT_SIZE_MB * 1024 * 1024) {\n Toastr.error(\n t(\"neetoPayments.upi.payment.screenshot.tooLarge\", {\n maxSize: MAX_SCREENSHOT_SIZE_MB,\n })\n );\n\n return;\n }\n\n setScreenshotFile(file);\n };\n\n const handleRemoveScreenshot = () => {\n setScreenshotFile(null);\n if (fileInputRef.current) fileInputRef.current.value = \"\";\n };\n\n const uploadScreenshot = file =>\n new Promise((resolve, reject) => {\n const upload = new DirectUpload(file, DIRECT_UPLOAD_URL);\n upload.create((error, blob) => {\n if (error) reject(error);\n else resolve(blob.signed_id);\n });\n });\n\n const handleSubmit = async values => {\n onBeforePayment();\n\n let paymentScreenshot = null;\n if (screenshotFile) {\n try {\n setIsUploading(true);\n paymentScreenshot = await uploadScreenshot(screenshotFile);\n } catch {\n onFailedPayment();\n\n return;\n } finally {\n setIsUploading(false);\n }\n }\n\n createPayment({\n ...values,\n payableId,\n customAmount,\n payableType,\n discountCode,\n tipAttributes: tip,\n paymentScreenshot,\n });\n };\n\n return (\n <Form\n className=\"space-y-4\"\n formikProps={{\n onSubmit: handleSubmit,\n initialValues: INITIAL_VALUES,\n validationSchema,\n }}\n >\n {({ dirty }) => (\n <>\n <Typography style=\"body1\">\n {t(\"neetoPayments.upi.payment.vpaText\", { count: vpaIds.length })}\n </Typography>\n {isPresent(vpaIds) && (\n <div className=\"grid grid-cols-1 gap-8 gap-y-4 sm:grid-cols-2\">\n {vpaIds.map(vpaId => (\n <div\n className=\"flex flex-col items-center justify-center\"\n key={vpaId}\n >\n <QRCodeImage\n size={256}\n style={{ width: 80, height: 80 }}\n value={getQrCodeValue(vpaId, amountToUpi)}\n />\n <Typography\n className=\"w-full mt-2 text-center wrap-break-word\"\n style=\"body2\"\n >\n {vpaId}\n </Typography>\n </div>\n ))}\n </div>\n )}\n <Input\n label={t(\"neetoPayments.upi.payment.transaction.label\")}\n name=\"identifier\"\n placeholder={t(\"neetoPayments.upi.payment.transaction.placeholder\")}\n type=\"number\"\n />\n <div className=\"flex items-center gap-3\">\n <hr className=\"flex-1 border-gray-300\" />\n <Typography className=\"text-gray-500 uppercase\" style=\"body2\">\n {t(\"neetoPayments.common.or\")}\n </Typography>\n <hr className=\"flex-1 border-gray-300\" />\n </div>\n <div>\n <Typography className=\"mb-2\" style=\"body2\" weight=\"medium\">\n {t(\"neetoPayments.upi.payment.screenshot.label\")}\n </Typography>\n {screenshotPreview ? (\n <div className=\"relative inline-block\">\n <img\n alt={t(\"neetoPayments.upi.payment.screenshot.alt\")}\n className=\"max-h-40 rounded border border-gray-200\"\n src={screenshotPreview}\n />\n <Button\n className=\"absolute -right-2 -top-2 neeto-ui-rounded-full neeto-ui-bg-white neeto-ui-shadow-sm\"\n icon={Close}\n size=\"small\"\n style=\"text\"\n onClick={handleRemoveScreenshot}\n />\n </div>\n ) : (\n <div\n className=\"flex cursor-pointer flex-col items-center justify-center rounded border-2 border-dashed border-gray-300 p-6 transition-colors hover:border-gray-400\"\n role=\"button\"\n tabIndex={0}\n onClick={() => fileInputRef.current?.click()}\n onKeyDown={e => {\n if (e.key === \"Enter\" || e.key === \" \") {\n fileInputRef.current?.click();\n }\n }}\n >\n <i className=\"ri-upload-2-line text-2xl text-gray-400\" />\n <Typography className=\"mt-1 text-gray-500\" style=\"body3\">\n {t(\"neetoPayments.upi.payment.screenshot.uploadText\")}\n </Typography>\n <Typography className=\"text-gray-400\" style=\"nano\">\n {t(\"neetoPayments.upi.payment.screenshot.formatHint\", {\n maxSize: MAX_SCREENSHOT_SIZE_MB,\n })}\n </Typography>\n </div>\n )}\n <input\n accept={ACCEPTED_SCREENSHOT_FORMATS}\n className=\"hidden\"\n data-testid=\"manual-upi-screenshot-upload-input-field\"\n ref={fileInputRef}\n type=\"file\"\n onChange={handleScreenshotSelect}\n />\n </div>\n <ActionBlock\n cancelButtonProps={{\n label: t(\"neetoPayments.upi.payment.buttons.back\"),\n onClick: handleCancel,\n disabled: isPending,\n }}\n submitButtonProps={{\n label: t(\"neetoPayments.upi.payment.buttons.submit\"),\n disabled: (!dirty && !screenshotFile) || isPending || isUploading,\n loading: isPending || isUploading,\n }}\n />\n </>\n )}\n </Form>\n );\n};\n\nexport default ManualUpiPayment;\n"],"names":["ACCEPTED_SCREENSHOT_FORMATS","MAX_SCREENSHOT_SIZE_MB","DIRECT_UPLOAD_URL","INITIAL_VALUES","identifier","buildValidationSchema","screenshotFile","yup","object","number","typeError","t","entity","nullable","transform","value","originalValue","test","isPresent","isNotPresent","Number","isInteger","length","toString","ManualUpiPayment","fee","payableId","tip","amount","discountCode","customAmount","handleCancel","payableType","onBeforePayment","noop","onFailedPayment","onSuccessfulPayment","useTranslation","fileInputRef","useRef","setScreenshotFile","useState","isUploading","setIsUploading","screenshotPreview","useMemo","URL","createObjectURL","useEffect","revokeObjectURL","vpaIds","pluck","vpas","amountToUpi","isPending","mutate","createPayment","useCreateUpiPayment","onSuccess","onError","validationSchema","handleScreenshotSelect","event","file","target","files","size","Toastr","error","maxSize","handleRemoveScreenshot","current","uploadScreenshot","Promise","resolve","reject","upload","DirectUpload","create","blob","signed_id","handleSubmit","values","paymentScreenshot","tipAttributes","_jsx","Form","className","formikProps","onSubmit","initialValues","children","dirty","_jsxs","_Fragment","Typography","style","count","map","vpaId","QRCodeImage","width","height","getQrCodeValue","Input","label","name","placeholder","type","weight","alt","src","Button","icon","Close","onClick","role","tabIndex","click","onKeyDown","e","key","accept","ref","onChange","ActionBlock","cancelButtonProps","disabled","submitButtonProps","loading"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { useState } from 'react';
|
|
|
2
2
|
import { noop, findBy } from 'neetocist';
|
|
3
3
|
import { mergeLeft } from 'ramda';
|
|
4
4
|
import { useTranslation } from 'react-i18next';
|
|
5
|
-
import { a as useUpdateUpiPayment } from './usePaymentApi-
|
|
5
|
+
import { a as useUpdateUpiPayment } from './usePaymentApi-C8fRdHmK.js';
|
|
6
6
|
import { Button, Modal, Typography } from '@bigbinary/neetoui';
|
|
7
7
|
import { Form, Select, Textarea, ActionBlock } from '@bigbinary/neetoui/formik';
|
|
8
8
|
import { t } from 'i18next';
|
|
@@ -11,7 +11,7 @@ import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
|
11
11
|
import '@tanstack/react-query';
|
|
12
12
|
import 'neetocommons/react-utils';
|
|
13
13
|
import 'axios';
|
|
14
|
-
import './index-
|
|
14
|
+
import './index-CajHy3NQ.js';
|
|
15
15
|
import 'neetocommons/constants';
|
|
16
16
|
import 'decimal.js';
|
|
17
17
|
import 'neetocommons/utils';
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { useState } from 'react';
|
|
2
2
|
import { noop } from 'neetocist';
|
|
3
3
|
import { useTranslation } from 'react-i18next';
|
|
4
|
-
import { a as useUpdateUpiPayment } from './usePaymentApi-
|
|
4
|
+
import { a as useUpdateUpiPayment } from './usePaymentApi-C8fRdHmK.js';
|
|
5
5
|
import { Button, Modal, Typography } from '@bigbinary/neetoui';
|
|
6
6
|
import { Form, Textarea, ActionBlock } from '@bigbinary/neetoui/formik';
|
|
7
7
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
8
8
|
import '@tanstack/react-query';
|
|
9
9
|
import 'neetocommons/react-utils';
|
|
10
10
|
import 'axios';
|
|
11
|
-
import './index-
|
|
11
|
+
import './index-CajHy3NQ.js';
|
|
12
12
|
import 'i18next';
|
|
13
13
|
import 'neetocommons/constants';
|
|
14
14
|
import 'decimal.js';
|
|
@@ -5,12 +5,10 @@ import { Bar, buildFiltersFromURL } from '@bigbinary/neeto-filters-frontend';
|
|
|
5
5
|
import { Typography, Tooltip, Tag, Button, NoData, Table, Tab, Spinner } from '@bigbinary/neetoui';
|
|
6
6
|
import { map, curry, concat, reject, isNil, prop, mergeDeepWith, mergeLeft, isEmpty, modify } from 'ramda';
|
|
7
7
|
import { useHistory } from 'react-router-dom';
|
|
8
|
-
import { E as ExportModal } from './ExportModal-
|
|
9
|
-
import {
|
|
10
|
-
import
|
|
11
|
-
import {
|
|
12
|
-
import { Q as QUERY_KEYS } from './queryConstants-8c7Nd8ML.js';
|
|
13
|
-
import { m as mergeEnforcedFilters } from './dashboard-Uo2nRTH0.js';
|
|
8
|
+
import { E as ExportModal } from './ExportModal-Bun3pMGn.js';
|
|
9
|
+
import { u as useFetchPayments } from './usePaymentsApi-C2xbgHmw.js';
|
|
10
|
+
import { q as PAYMENT_PROVIDERS, o as DEFAULT_TAG_STYLE, r as formatAmount, s as formatCurrency, t as getUniquePaymentProviders, v as buildDefaultTableColumns, w as processDataIndex, S as SORT_DIRECTIONS, 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';
|
|
14
12
|
import { t } from 'i18next';
|
|
15
13
|
import { toLabelAndValue, isNotPresent, humanize, snakeToCamelCase, isPresent, camelToSnakeCase } from 'neetocist';
|
|
16
14
|
import { useTableConfigurations } from '@bigbinary/neeto-molecules/Columns';
|
|
@@ -18,26 +16,18 @@ import TableWrapper from '@bigbinary/neeto-molecules/TableWrapper';
|
|
|
18
16
|
import { useTranslation } from 'react-i18next';
|
|
19
17
|
import { T as TABLE_KEYS } from './exportChannel-Db0U5gc1.js';
|
|
20
18
|
import DateFormat from '@bigbinary/neeto-molecules/DateFormat';
|
|
21
|
-
import { C as CopyButtonWrapper } from './CopyButtonWrapper-
|
|
19
|
+
import { C as CopyButtonWrapper } from './CopyButtonWrapper-CbzDq6Cq.js';
|
|
22
20
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
23
21
|
import Header from '@bigbinary/neeto-molecules/Header';
|
|
24
22
|
import SubHeader from '@bigbinary/neeto-molecules/SubHeader';
|
|
25
23
|
import '@bigbinary/neeto-icons';
|
|
24
|
+
import './useExportsApi-C1wjoVYy.js';
|
|
25
|
+
import '@tanstack/react-query';
|
|
26
|
+
import 'axios';
|
|
27
|
+
import './queryConstants-8c7Nd8ML.js';
|
|
26
28
|
import 'decimal.js';
|
|
27
29
|
import '@bigbinary/neeto-molecules/CopyToClipboardButton';
|
|
28
|
-
|
|
29
|
-
const list = payload => axios.get(`${BASE_URL}/api/v1/payments`, {
|
|
30
|
-
params: payload
|
|
31
|
-
});
|
|
32
|
-
const paymentsApi = {
|
|
33
|
-
list
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
const useFetchPayments = (payload = {}, options = {}) => useQuery({
|
|
37
|
-
queryKey: [QUERY_KEYS.PAYMENTS_LIST, payload],
|
|
38
|
-
queryFn: () => paymentsApi.list(payload),
|
|
39
|
-
...options
|
|
40
|
-
});
|
|
30
|
+
import './copy-button-EhEBcNP9.js';
|
|
41
31
|
|
|
42
32
|
const PAYMENT_DASHBOARD_TAB = {
|
|
43
33
|
all: "all",
|
|
@@ -1 +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 authorized: \"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, paymentScreenshotUrl }) => {\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 if (isNotPresent(identifier) && isPresent(paymentScreenshotUrl)) {\n return (\n <Tooltip\n content={t(\"neetoPayments.tooltipContent.screenshotUploadedByCustomer\")}\n position=\"top\"\n >\n <div className=\"text-center\">\n <Typography style=\"body2\">-</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 title: t(\"neetoPayments.common.notes\"),\n dataIndex: \"notes\",\n key: \"notes\",\n width: 250,\n sorter: false,\n position: 10,\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 { useTranslation } from \"react-i18next\";\n\nimport { Table, NoData } from \"neetoui\";\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, useMemo, 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\";\nimport { mergeEnforcedFilters } from \"utils/dashboard\";\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 enforceFilterValues = [],\n isIncludeAllHoldableIds = false,\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\n // Merge enforced filters with user-selected filters for API payload\n // Enforced filters are included in API requests but not reflected in URL\n const apiFilters = useMemo(\n () =>\n mergeEnforcedFilters(\n filters,\n enforceFilterValues,\n filterableColumns\n ),\n [filters, enforceFilterValues, filterableColumns]\n );\n\n const payload = {\n dashboardKind,\n holdableIds,\n isIncludeAllHoldableIds,\n tab,\n filters: apiFilters,\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 holdableIds,\n isExportModalOpen,\n setIsExportModalOpen,\n sortProperties,\n }}\n dashboardKind={DASHBOARD_KIND.payments}\n filters={apiFilters}\n />\n </>\n );\n};\n\nexport default PaymentsDashboard;\n"],"names":["list","payload","axios","get","BASE_URL","params","paymentsApi","useFetchPayments","options","useQuery","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","map","toLabelAndValue","PAYMENT_PROVIDERS","toUpperCase","value","TAG_STYLE","initiated","cancelled","paid","failed","in_transit","confirmationPending","authorized","PAYMENT_PROVIDER","eupi","DEFAULT_SORT_PROPERTIES","sortBy","orderBy","renderIdentifier","identifier","receiptUrl","paymentScreenshotUrl","isTemporaryIdentifier","startsWith","_jsx","Tooltip","content","position","children","className","Typography","style","isNotPresent","isPresent","CopyButtonWrapper","Button","href","size","target","getTagStyle","status","DEFAULT_TAG_STYLE","preProcessStatus","record","isRefunded","snakeToCamelCase","renderStatus","curry","processedStatus","Tag","humanize","renderPaymentProvider","paymentProvider","renderDate","date","DateFormat","DateTime","renderPayoutTraceId","getDefaultColumns","dashboardKind","columns","title","dataIndex","width","isHidable","render","sorter","formatAmount","formatCurrency","concat","buildSearchProps","searchProps","searchTerm","mergeDeepWith","mergeLeft","trim","buildFilterColumns","payableEntityColumns","reject","isNil","prop","buildRowData","payments","pageProperties","element","index","id","isEmpty","pageSize","page","List","isFetching","setSortProperties","handleTablePagination","views","useTranslation","tab","getQueryParams","paymentsCount","useMemo","isMultipleProvidersExist","getUniquePaymentProviders","length","defaultColumns","allColumns","buildDefaultTableColumns","isAllTab","isTableConfigurationLoading","customizedColumns","hideColumn","useTableConfigurations","TABLE_KEYS","PAYMENTS_TABLE","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","TopSection","filters","setFilters","filterableColumns","searchKeywordProps","setIsExportModalOpen","isFilterPaneOpen","setIsFilterPaneOpen","useState","history","useHistory","isPaymentCountVisible","isFilterButtonVisible","handleFiltersChange","startTransition","handleTabChange","queryParams","toCamelCase","newParams","DEFAULT_PAGE_INDEX","page_size","DEFAULT_PAGE_SIZE","push","buildUrl","window","location","pathname","_jsxs","_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","holdableIds","enforceFilterValues","isIncludeAllHoldableIds","sortProperties","setPageProperties","DEFAULT_PAGE_VALUES","isExportModalOpen","buildFiltersFromURL","apiFilters","mergeEnforcedFilters","data","isPending","isPaymentsLoaidng","enabled","useEffect","Spinner","ExportModal","DASHBOARD_KIND"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,MAAMA,IAAI,GAAGC,OAAO,IAClBC,KAAK,CAACC,GAAG,CAAC,CAAA,EAAGC,QAAQ,CAAA,gBAAA,CAAkB,EAAE;AAAEC,EAAAA,MAAM,EAAEJ;AAAQ,CAAC,CAAC;AAE/D,MAAMK,WAAW,GAAG;AAAEN,EAAAA;AAAK,CAAC;;ACFrB,MAAMO,gBAAgB,GAAGA,CAACN,OAAO,GAAG,EAAE,EAAEO,OAAO,GAAG,EAAE,KACzDC,QAAQ,CAAC;AACPC,EAAAA,QAAQ,EAAE,CAACC,UAAU,CAACC,aAAa,EAAEX,OAAO,CAAC;EAC7CY,OAAO,EAAEA,MAAMP,WAAW,CAACN,IAAI,CAACC,OAAO,CAAC;EACxC,GAAGO;AACL,CAAC,CAAC;;ACFG,MAAMM,qBAAqB,GAAG;AACnCC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,UAAU,EAAE,YAAY;AACxBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,oBAAoB,EAAE;AACxB,CAAC;AAEM,MAAMC,YAAY,GAAG;AAC1BC,EAAAA,IAAI,EAAE,aAAa;AACnBC,EAAAA,GAAG,EAAE,aAAa;AAClBC,EAAAA,KAAK,EAAE;AACT,CAAC;AAEM,MAAMC,cAAc,GAAG,CAC5B;AACEF,EAAAA,GAAG,EAAE,kBAAkB;AACvBG,EAAAA,KAAK,EAAEC,CAAC,CAAC,sCAAsC,CAAC;AAChDL,EAAAA,IAAI,EAAE,kBAAkB;AACxBM,EAAAA,IAAI,EAAE,eAAe;EACrBC,MAAM,EAAE,CACN,GAAGC,GAAG,CAACC,eAAe,EAAEC,iBAAiB,CAAC,EAC1C;IAAEN,KAAK,EAAEC,CAAC,CAAC,0BAA0B,CAAC,CAACM,WAAW,EAAE;AAAEC,IAAAA,KAAK,EAAE;GAAQ;AAEzE,CAAC,EACD;AACEX,EAAAA,GAAG,EAAE,QAAQ;AACbG,EAAAA,KAAK,EAAEC,CAAC,CAAC,6BAA6B,CAAC;AACvCL,EAAAA,IAAI,EAAE,QAAQ;AACdM,EAAAA,IAAI,EAAE;AACR,CAAC,EACD;AACEL,EAAAA,GAAG,EAAE,cAAc;AACnBG,EAAAA,KAAK,EAAEC,CAAC,CAAC,kCAAkC,CAAC;AAC5CL,EAAAA,IAAI,EAAE,YAAY;AAClBM,EAAAA,IAAI,EAAE;AACR,CAAC,CACF;AAEM,MAAMO,SAAS,GAAG;AACvBC,EAAAA,SAAS,EAAE,MAAM;AACjBpB,EAAAA,QAAQ,EAAE,QAAQ;AAClBD,EAAAA,UAAU,EAAE,SAAS;AACrBE,EAAAA,QAAQ,EAAE,WAAW;AACrBoB,EAAAA,SAAS,EAAE,WAAW;AACtBnB,EAAAA,OAAO,EAAE,SAAS;AAClBoB,EAAAA,IAAI,EAAE,SAAS;AACfC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,UAAU,EAAE,MAAM;AAClBrB,EAAAA,QAAQ,EAAE,QAAQ;AAClBsB,EAAAA,mBAAmB,EAAE,SAAS;AAC9BC,EAAAA,UAAU,EAAE;AACd,CAAC;AAEM,MAAMC,gBAAgB,GAAG;AAAEC,EAAAA,IAAI,EAAE;AAAO,CAAC;AAEzC,MAAMC,uBAAuB,GAAG;AACrCC,EAAAA,MAAM,EAAE,YAAY;AACpBC,EAAAA,OAAO,EAAE;AACX,CAAC;;ACzDD,MAAMC,gBAAgB,GAAGA,CAACC,UAAU,EAAE;EAAEC,UAAU;AAAEC,EAAAA;AAAqB,CAAC,KAAK;AAC7E,EAAA,MAAMC,qBAAqB,GAAGH,UAAU,EAAEI,UAAU,CAAC,OAAO,CAAC;AAE7D,EAAA,IAAID,qBAAqB,EAAE;IACzB,oBACEE,GAAA,CAACC,OAAO,EAAA;AACNC,MAAAA,OAAO,EAAE7B,CAAC,CAAC,2DAA2D,CAAE;AACxE8B,MAAAA,QAAQ,EAAC,KAAK;AAAAC,MAAAA,QAAA,eAEdJ,GAAA,CAAA,KAAA,EAAA;AAAKK,QAAAA,SAAS,EAAC,aAAa;QAAAD,QAAA,eAC1BJ,GAAA,CAACM,UAAU,EAAA;AAACC,UAAAA,KAAK,EAAC,OAAO;UAAAH,QAAA,EACtB/B,CAAC,CAAC,mCAAmC;SAC5B;OACT;AAAC,KACC,CAAC;AAEd,EAAA;EAEA,IAAImC,YAAY,CAACb,UAAU,CAAC,IAAIc,SAAS,CAACZ,oBAAoB,CAAC,EAAE;IAC/D,oBACEG,GAAA,CAACC,OAAO,EAAA;AACNC,MAAAA,OAAO,EAAE7B,CAAC,CAAC,2DAA2D,CAAE;AACxE8B,MAAAA,QAAQ,EAAC,KAAK;AAAAC,MAAAA,QAAA,eAEdJ,GAAA,CAAA,KAAA,EAAA;AAAKK,QAAAA,SAAS,EAAC,aAAa;QAAAD,QAAA,eAC1BJ,GAAA,CAACM,UAAU,EAAA;AAACC,UAAAA,KAAK,EAAC,OAAO;AAAAH,UAAAA,QAAA,EAAC;SAAa;OACpC;AAAC,KACC,CAAC;AAEd,EAAA;EAEA,oBACEJ,GAAA,CAACU,iBAAiB,EAAA;AAACR,IAAAA,OAAO,EAAEP,UAAW;IAAAS,QAAA,eACrCJ,GAAA,CAACW,MAAM,EAAA;AACLC,MAAAA,IAAI,EAAEhB,UAAW;AACjBxB,MAAAA,KAAK,EAAEuB,UAAW;AAClBkB,MAAAA,IAAI,EAAC,OAAO;AACZN,MAAAA,KAAK,EAAC,MAAM;AACZO,MAAAA,MAAM,EAAC;KACR;AAAC,GACe,CAAC;AAExB,CAAC;AAED,MAAMC,WAAW,GAAGC,MAAM,IAAInC,SAAS,CAACmC,MAAM,CAAC,IAAIC,iBAAiB;AAEpE,MAAMC,gBAAgB,GAAGA,CAAC5C,IAAI,EAAE0C,MAAM,EAAEG,MAAM,GAAG,EAAE,KAAK;EACtD,IAAI7C,IAAI,KAAK,SAAS,EAAE;AACtB,IAAA,OAAO6C,MAAM,CAACC,UAAU,GAAG,UAAU,GAAGJ,MAAM;AAChD,EAAA;EAEA,OAAOK,gBAAgB,CAACL,MAAM,CAAC;AACjC,CAAC;AAED,MAAMM,YAAY,GAAGC,KAAK,CAAC,CAACjD,IAAI,EAAE0C,MAAM,EAAEG,MAAM,KAAK;AACnD,EAAA,IAAIX,YAAY,CAACQ,MAAM,CAAC,EAAE;IACxB,oBACEhB,GAAA,CAACM,UAAU,EAAA;AAACC,MAAAA,KAAK,EAAC,OAAO;MAAAH,QAAA,EACtB/B,CAAC,CAAC,mCAAmC;AAAC,KAC7B,CAAC;AAEjB,EAAA;EAEA,MAAMmD,eAAe,GAAGN,gBAAgB,CAAC5C,IAAI,EAAE0C,MAAM,EAAEG,MAAM,CAAC;EAE9D,oBACEnB,GAAA,CAACC,OAAO,EAAA;IACNC,OAAO,EAAE7B,CAAC,CAAC,CAAA,6BAAA,EAAgCC,IAAI,CAAA,CAAA,EAAIkD,eAAe,EAAE,CAAE;AACtErB,IAAAA,QAAQ,EAAC,KAAK;AAAAC,IAAAA,QAAA,eAEdJ,GAAA,CAAA,KAAA,EAAA;AAAKK,MAAAA,SAAS,EAAC,OAAO;MAAAD,QAAA,eACpBJ,GAAA,CAACyB,GAAG,EAAA;AACFlB,QAAAA,KAAK,EAAEQ,WAAW,CAACM,gBAAgB,CAACG,eAAe,CAAC,CAAE;QACtDpD,KAAK,EAAEsD,QAAQ,CACbrD,CAAC,CAAC,2BAA2BC,IAAI,CAAA,CAAA,EAAIkD,eAAe,CAAA,CAAE,CACxD;OACD;KACE;AAAC,GACC,CAAC;AAEd,CAAC,CAAC;AAEF,MAAMG,qBAAqB,GAAGC,eAAe,IAAI;AAC/C,EAAA,IAAIA,eAAe,KAAKvC,gBAAgB,CAACC,IAAI,EAAE;IAC7C,OAAOjB,CAAC,CAAC,0BAA0B,CAAC;AACtC,EAAA;EAEA,OAAOqD,QAAQ,CAACE,eAAe,CAAC;AAClC,CAAC;AAED,MAAMC,UAAU,GAAGC,IAAI,IAAI;AACzB,EAAA,IAAIrB,SAAS,CAACqB,IAAI,CAAC,EAAE;AACnB,IAAA,oBAAO9B,GAAA,CAAC+B,UAAU,CAACC,QAAQ,EAAA;AAAOF,MAAAA;AAAI,KAAK,CAAC;AAC9C,EAAA;EAEA,oBACE9B,GAAA,CAACM,UAAU,EAAA;AAACC,IAAAA,KAAK,EAAC,OAAO;IAAAH,QAAA,EACtB/B,CAAC,CAAC,mCAAmC;AAAC,GAC7B,CAAC;AAEjB,CAAC;AAED,MAAM4D,mBAAmB,GAAGrD,KAAK,IAAI;AACnC,EAAA,IAAI6B,SAAS,CAAC7B,KAAK,CAAC,EAAE,OAAOA,KAAK;EAElC,oBACEoB,GAAA,CAACM,UAAU,EAAA;AAACC,IAAAA,KAAK,EAAC,OAAO;IAAAH,QAAA,EACtB/B,CAAC,CAAC,mCAAmC;AAAC,GAC7B,CAAC;AAEjB,CAAC;AAEM,MAAM6D,iBAAiB,GAAGC,aAAa,IAAI;EAChD,IAAIC,OAAO,GAAG,CACZ;AACEC,IAAAA,KAAK,EAAEhE,CAAC,CAAC,yBAAyB,CAAC;AACnCiE,IAAAA,SAAS,EAAE,IAAI;AACfrE,IAAAA,GAAG,EAAE,IAAI;AACTsE,IAAAA,KAAK,EAAE,EAAE;AACTpC,IAAAA,QAAQ,EAAE,CAAC;AACXqC,IAAAA,SAAS,EAAE;AACb,GAAC,EACD;AACEH,IAAAA,KAAK,EAAEhE,CAAC,CAAC,iCAAiC,CAAC;AAC3CiE,IAAAA,SAAS,EAAE,YAAY;AACvBrE,IAAAA,GAAG,EAAE,YAAY;AACjBsE,IAAAA,KAAK,EAAE,GAAG;AACVE,IAAAA,MAAM,EAAE/C,gBAAgB;AACxBS,IAAAA,QAAQ,EAAE,CAAC;AACXqC,IAAAA,SAAS,EAAE;AACb,GAAC,EACD;AACEH,IAAAA,KAAK,EAAEhE,CAAC,CAAC,+BAA+B,CAAC;AACzCiE,IAAAA,SAAS,EAAE,iBAAiB;AAC5BrE,IAAAA,GAAG,EAAE,iBAAiB;AACtBsE,IAAAA,KAAK,EAAE,GAAG;AACVE,IAAAA,MAAM,EAAEd,qBAAqB;AAC7BxB,IAAAA,QAAQ,EAAE,CAAC;AACXuC,IAAAA,MAAM,EAAE;AACV,GAAC,EACD;AACEL,IAAAA,KAAK,EAAEhE,CAAC,CAAC,6BAA6B,CAAC;AACvCiE,IAAAA,SAAS,EAAE,QAAQ;AACnBrE,IAAAA,GAAG,EAAE,QAAQ;AACbsE,IAAAA,KAAK,EAAE,GAAG;AACVE,IAAAA,MAAM,EAAEnB,YAAY,CAAC,aAAa,CAAC;AACnCoB,IAAAA,MAAM,EAAE,IAAI;AACZvC,IAAAA,QAAQ,EAAE,CAAC;AACXqC,IAAAA,SAAS,EAAE;AACb,GAAC,EACD;AACEH,IAAAA,KAAK,EAAEhE,CAAC,CAAC,kCAAkC,CAAC;AAC5CiE,IAAAA,SAAS,EAAE,QAAQ;AACnBrE,IAAAA,GAAG,EAAE,QAAQ;AACbsE,IAAAA,KAAK,EAAE,GAAG;AACVG,IAAAA,MAAM,EAAE,IAAI;AACZD,IAAAA,MAAM,EAAEE,YAAY;AACpBxC,IAAAA,QAAQ,EAAE;AACZ,GAAC,EACD;AACEkC,IAAAA,KAAK,EAAEhE,CAAC,CAAC,gCAAgC,CAAC;AAC1CiE,IAAAA,SAAS,EAAE,WAAW;AACtBrE,IAAAA,GAAG,EAAE,WAAW;AAChBsE,IAAAA,KAAK,EAAE,GAAG;AACVG,IAAAA,MAAM,EAAE,IAAI;AACZD,IAAAA,MAAM,EAAEE,YAAY;AACpBxC,IAAAA,QAAQ,EAAE;AACZ,GAAC,EACD;AACEkC,IAAAA,KAAK,EAAEhE,CAAC,CAAC,gCAAgC,CAAC;AAC1CiE,IAAAA,SAAS,EAAE,WAAW;AACtBrE,IAAAA,GAAG,EAAE,WAAW;AAChBsE,IAAAA,KAAK,EAAE,GAAG;AACVG,IAAAA,MAAM,EAAE,IAAI;AACZD,IAAAA,MAAM,EAAEE,YAAY;AACpBxC,IAAAA,QAAQ,EAAE;AACZ,GAAC,EACD;AACEkC,IAAAA,KAAK,EAAEhE,CAAC,CAAC,+BAA+B,CAAC;AACzCiE,IAAAA,SAAS,EAAE,UAAU;AACrBrE,IAAAA,GAAG,EAAE,UAAU;AACfsE,IAAAA,KAAK,EAAE,GAAG;AACVG,IAAAA,MAAM,EAAE,IAAI;AACZD,IAAAA,MAAM,EAAEG,cAAc;AACtBzC,IAAAA,QAAQ,EAAE;AACZ,GAAC,EACD;AACEkC,IAAAA,KAAK,EAAEhE,CAAC,CAAC,kCAAkC,CAAC;AAC5CiE,IAAAA,SAAS,EAAE,WAAW;AACtBrE,IAAAA,GAAG,EAAE,aAAa;AAClBsE,IAAAA,KAAK,EAAE,GAAG;AACVE,IAAAA,MAAM,EAAEZ,UAAU;AAClBa,IAAAA,MAAM,EAAE,IAAI;AACZvC,IAAAA,QAAQ,EAAE;AACZ,GAAC,EACD;AACEkC,IAAAA,KAAK,EAAEhE,CAAC,CAAC,4BAA4B,CAAC;AACtCiE,IAAAA,SAAS,EAAE,OAAO;AAClBrE,IAAAA,GAAG,EAAE,OAAO;AACZsE,IAAAA,KAAK,EAAE,GAAG;AACVG,IAAAA,MAAM,EAAE,KAAK;AACbvC,IAAAA,QAAQ,EAAE;AACZ,GAAC,CACF;EAED,IAAIgC,aAAa,KAAK,WAAW,EAAE;IACjCC,OAAO,GAAGS,MAAM,CACd,CACE;AACER,MAAAA,KAAK,EAAEhE,CAAC,CAAC,mCAAmC,CAAC;AAC7CiE,MAAAA,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;AAC/BrE,MAAAA,GAAG,EAAE,cAAc;AACnBsE,MAAAA,KAAK,EAAE,GAAG;AACVE,MAAAA,MAAM,EAAEnB,YAAY,CAAC,QAAQ,CAAC;AAC9BoB,MAAAA,MAAM,EAAE,KAAK;AACbvC,MAAAA,QAAQ,EAAE;AACZ,KAAC,EACD;AACEkC,MAAAA,KAAK,EAAEhE,CAAC,CAAC,wCAAwC,CAAC;AAClDiE,MAAAA,SAAS,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC;AACpCrE,MAAAA,GAAG,EAAE,mBAAmB;AACxBsE,MAAAA,KAAK,EAAE,GAAG;AACVE,MAAAA,MAAM,EAAEZ,UAAU;AAClBa,MAAAA,MAAM,EAAE,IAAI;AACZvC,MAAAA,QAAQ,EAAE;AACZ,KAAC,EACD;AACEkC,MAAAA,KAAK,EAAEhE,CAAC,CAAC,oCAAoC,CAAC;AAC9CiE,MAAAA,SAAS,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC;AACzCrE,MAAAA,GAAG,EAAE,eAAe;AACpBsE,MAAAA,KAAK,EAAE,GAAG;AACVE,MAAAA,MAAM,EAAER,mBAAmB;AAC3BS,MAAAA,MAAM,EAAE,KAAK;AACbvC,MAAAA,QAAQ,EAAE;KACX,CACF,EACDiC,OACF,CAAC;AACH,EAAA;AAEA,EAAA,OAAOA,OAAO;AAChB,CAAC;;AChPM,MAAMU,gBAAgB,GAAGA,CAACC,WAAW,EAAEC,UAAU,KACtDC,aAAa,CACXJ,MAAM,EACN9E,YAAY,EACZmF,SAAS,CAAC;AAAEtE,EAAAA,KAAK,EAAEoE,UAAU,CAACG,IAAI;AAAG,CAAC,EAAEJ,WAAW,CACrD,CAAC;AAEI,MAAMK,kBAAkB,GAAGA,CAACC,oBAAoB,GAAG,EAAE,KAC1DC,MAAM,CACJC,KAAK,EACLV,MAAM,CAAC1E,cAAc,EAAEK,GAAG,CAACgF,IAAI,CAAC,aAAa,CAAC,EAAEH,oBAAoB,CAAC,CACvE,CAAC;AAEI,MAAMI,YAAY,GAAGA,CAAC;EAAEC,QAAQ;AAAEC,EAAAA,cAAc,GAAG;AAAG,CAAC,KAC5DD,QAAQ,EAAElF,GAAG,CAAC,CAACoF,OAAO,EAAEC,KAAK,MAAM;AACjC,EAAA,GAAGD,OAAO;EACVE,EAAE,EAAEC,OAAO,CAACJ,cAAc,CAAC,GACvBE,KAAK,GAAG,CAAC,GACTF,cAAc,CAACK,QAAQ,IAAIL,cAAc,CAACM,IAAI,GAAG,CAAC,CAAC,GAAGJ,KAAK,GAAG;AACpE,CAAC,CAAC,CAAC;;ACXL,MAAMK,IAAI,GAAGA,CAAC;EACZ/B,aAAa;EACbgC,UAAU;EACVT,QAAQ;EACRL,oBAAoB;EACpBe,iBAAiB;EACjBT,cAAc;EACdU,qBAAqB;AACrBC,EAAAA;AACF,CAAC,KAAK;EACJ,MAAM;AAAEjG,IAAAA;GAAG,GAAGkG,cAAc,EAAE;EAE9B,MAAM;IAAEC,GAAG,GAAGjH,qBAAqB,CAACC;GAAK,GAAGiH,cAAc,EAAE;AAE5D,EAAA,MAAMC,aAAa,GAAGC,OAAO,CAAC,MAAML,KAAK,GAAGE,GAAG,CAAC,EAAE,CAACF,KAAK,EAAEE,GAAG,CAAC,CAAC;AAC/D,EAAA,MAAMI,wBAAwB,GAAGD,OAAO,CACtC,MAAME,yBAAyB,CAACnB,QAAQ,IAAI,EAAE,CAAC,CAACoB,MAAM,GAAG,CAAC,EAC1D,CAACpB,QAAQ,CACX,CAAC;AAED,EAAA,MAAMqB,cAAc,GAAGJ,OAAO,CAC5B,MAAMzC,iBAAiB,CAACC,aAAa,CAAC,EACtC,CAACA,aAAa,CAChB,CAAC;AAED,EAAA,MAAM6C,UAAU,GAAGL,OAAO,CACxB,MACEM,wBAAwB,CAAC;IACvB5B,oBAAoB;IAEpB0B,cAAc;AACdG,IAAAA,QAAQ,EAAEV,GAAG,KAAKjH,qBAAqB,CAACC;GACzC,CAAC,EACJ,CAAC6F,oBAAoB,EAAEuB,wBAAwB,EAAEG,cAAc,EAAEP,GAAG,CACtE,CAAC;EAED,MAAM;IAAEW,2BAA2B;IAAEC,iBAAiB;AAAEC,IAAAA;AAAW,GAAC,GAClEC,sBAAsB,CAAC,CAAA,EAAGC,UAAU,CAACC,cAAc,CAAA,CAAA,EAAIhB,GAAG,CAAA,CAAE,EAAEQ,UAAU,CAAC;EAE3E,MAAMS,iBAAiB,GAAGC,WAAW,CACnC,CAACC,CAAC,EAAEC,EAAE,EAAElD,MAAM,KAAK;AACjB0B,IAAAA,iBAAiB,CACf3D,SAAS,CAACiC,MAAM,EAAEmD,MAAM,CAAC,GACrB;MACErG,MAAM,EAAEsG,gBAAgB,CAACC,gBAAgB,CAACrD,MAAM,CAACsD,KAAK,CAAC,CAAC;MACxDvG,OAAO,EAAEiD,MAAM,CAACuD,KAAK,KAAK,QAAQ,GAAG,KAAK,GAAG;KAC9C,GACD1G,uBACN,CAAC;AACH,EAAA,CAAC,EACD,CAAC6E,iBAAiB,CACpB,CAAC;AAED,EAAA,MAAM8B,OAAO,GAAGvB,OAAO,CACrB,MAAMlB,YAAY,CAAC;IAAEC,QAAQ;IAAEC,cAAoB,CAAC,CAAC,EACrD,CAACD,QAAQ,EAAEC,cAAc,EAAEa,GAAG,CAChC,CAAC;AAED,EAAA,IAAIhE,YAAY,CAACkD,QAAQ,CAAC,EAAE;AAC1B,IAAA,oBACE1D,GAAA,CAAA,KAAA,EAAA;AAAKK,MAAAA,SAAS,EAAC,gDAAgD;MAAAD,QAAA,eAC7DJ,GAAA,CAACmG,MAAM,EAAA;AACL9D,QAAAA,KAAK,EACHmC,GAAG,KAAKjH,qBAAqB,CAACC,GAAG,GAC7Ba,CAAC,CAAC,mCAAmC,CAAC,GACtCA,CAAC,CAAC,6CAA6C,EAAE;UAC/C2C,MAAM,EAAEU,QAAQ,CAAC8C,GAAG;SACrB;OAER;AAAC,KACC,CAAC;AAEV,EAAA;EAEA,oBACExE,GAAA,CAACoG,YAAY,EAAA;AAACC,IAAAA,aAAa,EAAE3B,aAAa,GAAGf,cAAc,EAAEK,QAAS;IAAA5D,QAAA,eACpEJ,GAAA,CAACsG,KAAK,EAAA;MACEJ,OAAO;MACbK,WAAW,EAAA,IAAA;AACXC,MAAAA,aAAa,EAAE,KAAM;AACrBC,MAAAA,UAAU,EAAErB,iBAAkB;MAC9BsB,iBAAiB,EAAE/C,cAAc,EAAEM,IAAK;AACxC0C,MAAAA,gBAAgB,EAAEtC,qBAAsB;MACxCuC,OAAO,EAAEzC,UAAU,IAAIgB,2BAA4B;AACnD0B,MAAAA,YAAY,EAAE,KAAM;AACpBC,MAAAA,cAAc,EAAEC,eAAgB;AAChCC,MAAAA,UAAU,EAAEtC,aAAc;AAC1BuC,MAAAA,eAAe,EAAE;AACfC,QAAAA,eAAe,EAAE,IAAI;AACrBC,QAAAA,gBAAgB,EAAE,IAAI;QACtBnD,QAAQ,EAAEL,cAAc,EAAEK,QAAQ;AAClCoD,QAAAA,KAAK,EAAE1C;OACP;AACF2C,MAAAA,QAAQ,EAAE5B,iBAAkB;AAC5B6B,MAAAA,YAAY,EAAEA,CAAC;AAAErJ,QAAAA;OAAK,KAAKoH,UAAU,CAACpH,GAAG;KAC1C;AAAC,GACU,CAAC;AAEnB,CAAC;;AC/FD,MAAMsJ,UAAU,GAAGA,CAAC;EAClBjD,KAAK;EACLkD,OAAO;EACPC,UAAU;EACVC,iBAAiB;EACjBC,kBAAkB;EAClBtE,oBAAoB;EACpBuE,oBAAoB;AACpBzF,EAAAA;AACF,CAAC,KAAK;EACJ,MAAM,CAAC0F,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGC,QAAQ,CAAC,KAAK,CAAC;EAE/D,MAAM;AAAE1J,IAAAA;GAAG,GAAGkG,cAAc,EAAE;AAC9B,EAAA,MAAMyD,OAAO,GAAGC,UAAU,EAAE;EAC5B,MAAM;IAAEzD,GAAG,GAAGjH,qBAAqB,CAACC;GAAK,GAAGiH,cAAc,EAAE;AAE5D,EAAA,MAAMC,aAAa,GAAGJ,KAAK,GAAGE,GAAG,CAAC;AAClC,EAAA,MAAM0D,qBAAqB,GACzBxD,aAAa,GAAG,CAAC,IAAKA,aAAa,KAAK,CAAC,IAAIjE,SAAS,CAAC+G,OAAO,CAAE;AAClE,EAAA,MAAMW,qBAAqB,GAAGD,qBAAqB,IAAIzH,SAAS,CAAC+G,OAAO,CAAC;EAEzE,MAAMY,mBAAmB,GAAGZ,OAAO,IAAI;AACrCa,IAAAA,eAAe,CAAC,MAAM;MACpBZ,UAAU,CAACD,OAAO,CAAC;AACrB,IAAA,CAAC,CAAC;EACJ,CAAC;EAED,MAAMc,eAAe,GAAG9D,GAAG,IAAI;IAC7B,MAAM+D,WAAW,GAAG9D,cAAc,CAAC;AAAE+D,MAAAA,WAAW,EAAE;AAAM,KAAC,CAAC;AAC1D,IAAA,MAAMC,SAAS,GAAG;MAChBjE,GAAG;AACHP,MAAAA,IAAI,EAAEyE,kBAAkB;AACxBC,MAAAA,SAAS,EAAEC;KACZ;AAEDZ,IAAAA,OAAO,CAACa,IAAI,CACVC,QAAQ,CAACC,MAAM,CAACC,QAAQ,CAACC,QAAQ,EAAE/F,SAAS,CAACuF,SAAS,EAAEF,WAAW,CAAC,CACtE,CAAC;EACH,CAAC;EAED,oBACEW,IAAA,CAAAC,QAAA,EAAA;IAAA/I,QAAA,EAAA,cACEJ,GAAA,CAACoJ,MAAM,EAAA;AACL/G,MAAAA,KAAK,EAAEhE,CAAC,CAAC,8BAA8B,CAAE;MACzC0E,WAAW,EACToF,qBAAqB,IAAI;QACvBkB,WAAW,EAAE1B,kBAAkB,CAAC0B,WAAW;QAC3ChJ,SAAS,EACPsH,kBAAkB,CAAC0B,WAAW,CAACvE,MAAM,GAAG,EAAE,GAAG,MAAM,GAAG;AAC1D;KAEH,CAAC,EACDwE,iBAAiB,CAAChF,KAAK,CAAC,iBACvBtE,GAAA,CAACuJ,GAAG,EAAA;AAAAnJ,MAAAA,QAAA,EACDoJ,MAAM,CAACC,IAAI,CAAClM,qBAAqB,CAAC,CAACiB,GAAG,CAACkL,IAAI,iBAC1C1J,GAAA,CAACuJ,GAAG,CAACI,IAAI,EAAA;QACPC,MAAM,EAAEpF,GAAG,KAAKkF,IAAK;AAErBG,QAAAA,OAAO,EAAEA,MAAMvB,eAAe,CAACoB,IAAI,CAAE;QAAAtJ,QAAA,EAEpC/B,CAAC,CAAC,CAAA,qBAAA,EAAwBgD,gBAAgB,CAACqI,IAAI,CAAC,CAAA,CAAE;AAAC,OAAA,EAH/CA,IAIG,CACX;AAAC,KACC,CACN,eACD1J,GAAA,CAAC8J,SAAS,EAAA;AACRzJ,MAAAA,SAAS,EAAC,MAAM;AAChB0J,MAAAA,eAAe,EACb7B,qBAAqB,iBACnBlI,GAAA,CAACM,UAAU,EAAA;AACTD,QAAAA,SAAS,EAAC,sCAAsC;AAChD2J,QAAAA,SAAS,EAAC,IAAI;QAAA5J,QAAA,EAEboE,GAAG,KAAKjH,qBAAqB,CAACC,GAAG,GAC9Ba,CAAC,CAAC,+BAA+B,EAAE;AAAE4L,UAAAA,KAAK,EAAEvF;AAAc,SAAC,CAAC,GAC5DrG,CAAC,CAAC,yCAAyC,EAAE;AAC3C4L,UAAAA,KAAK,EAAEvF,aAAa;UACpB1D,MAAM,EAAEU,QAAQ,CAAC8C,GAAG;SACrB;AAAC,OACI,CAEf;AACD0F,MAAAA,gBAAgB,EACd/B,qBAAqB,iBACnBnI,GAAA,CAAC8J,SAAS,CAACK,UAAU,EAAA;AACnBC,QAAAA,kBAAkB,EAAE;UAClB3D,UAAU,EAAExB,wBAAwB,CAAC;AACnCF,YAAAA,cAAc,EAAE7C,iBAAiB,CAACC,aAAa,CAAC;YAChDkB,oBAAoB;AACpB6B,YAAAA,QAAQ,EAAEV,GAAG,KAAKjH,qBAAqB,CAACC;WACzC,CAAC,CAACgB,GAAG,CAAC6L,MAAM,CAAC,WAAW,EAAEtE,gBAAgB,CAAC,CAAC;AAC7CuE,UAAAA,YAAY,EAAEC,mBAAmB;AACjCC,UAAAA,QAAQ,EAAE,CAAA,EAAGjF,UAAU,CAACC,cAAc,IAAIhB,GAAG,CAAA;SAC7C;AACFiG,QAAAA,mBAAmB,EAAE;AACnBZ,UAAAA,OAAO,EAAEA,MAAMjC,oBAAoB,CAAC,IAAI;SACxC;AACF8C,QAAAA,WAAW,EAAE;AACXtI,UAAAA,OAAO,EAAEsF,iBAAiB;AAC1BiD,UAAAA,MAAM,EAAE9C,gBAAgB;AACxB+C,UAAAA,OAAO,EAAEjD,kBAAkB;AAC3BkD,UAAAA,SAAS,EAAE/C,mBAAmB;AAC9BT,UAAAA,QAAQ,EAAEe;AACZ;OACD;AAEJ,KACF,CAAC,eACFpI,GAAA,CAAC8K,GAAU,EAAA;AACT1I,MAAAA,OAAO,EAAEsF,iBAAkB;AAC3BkD,MAAAA,OAAO,EAAEjD,kBAAmB;AAC5BoD,MAAAA,aAAa,EAAEjD,mBAAoB;AACnCT,MAAAA,QAAQ,EAAEe;AAAoB,KAC/B,CAAC;AAAA,GACF,CAAC;AAEP,CAAC;;ACzHD,MAAM4C,iBAAiB,GAAGA,CAAC;EACzBjI,WAAW;EACXM,oBAAoB;EACpB4H,WAAW,GAAG,EAAE;AAChBC,EAAAA,mBAAmB,GAAG,EAAE;AACxBC,EAAAA,uBAAuB,GAAG,KAAK;AAC/BhJ,EAAAA,aAAa,GAAG;AAClB,CAAC,KAAK;EACJ,MAAM;AAAEa,IAAAA,UAAU,GAAG;GAAI,GAAGyB,cAAc,EAAE;AAC5C,EAAA,MAAMiD,iBAAiB,GAAGtE,kBAAkB,CAACC,oBAAoB,CAAC;AAClE,EAAA,MAAMsE,kBAAkB,GAAG7E,gBAAgB,CAACC,WAAW,EAAEC,UAAU,CAAC;EAEpE,MAAM,CAACoI,cAAc,EAAEhH,iBAAiB,CAAC,GAAG2D,QAAQ,CAACxI,uBAAuB,CAAC;EAC7E,MAAM,CAACoE,cAAc,EAAE0H,iBAAiB,CAAC,GAAGtD,QAAQ,CAACuD,mBAAmB,CAAC;EACzE,MAAM,CAACC,iBAAiB,EAAE3D,oBAAoB,CAAC,GAAGG,QAAQ,CAAC,KAAK,CAAC;AACjE,EAAA,MAAM,CAACP,OAAO,EAAEC,UAAU,CAAC,GAAGM,QAAQ,CACpCyD,mBAAmB,CAAC,CAAC,GAAG9D,iBAAiB,EAAEC,kBAAkB,CAAC,CAChE,CAAC;AACD,EAAA,MAAMK,OAAO,GAAGC,UAAU,EAAE;EAC5B,MAAM;IAAEzD,GAAG,GAAGjH,qBAAqB,CAACC;GAAK,GAAGiH,cAAc,EAAE;;AAE5D;AACA;EACA,MAAMgH,UAAU,GAAG9G,OAAO,CACxB,MACE+G,oBAAoB,CAClBlE,OAAO,EACP0D,mBAAmB,EACnBxD,iBACF,CAAC,EACH,CAACF,OAAO,EAAE0D,mBAAmB,EAAExD,iBAAiB,CAClD,CAAC;AAED,EAAA,MAAMhL,OAAO,GAAG;IACdyF,aAAa;IACb8I,WAAW;IACXE,uBAAuB;IACvB3G,GAAG;AACHgD,IAAAA,OAAO,EAAEiE,UAAU;AACnB,IAAA,GAAG9H,cAAc;IACjB,GAAGyH;GACJ;EAED,MAAM;AACJO,IAAAA,IAAI,EAAE;MAAEjI,QAAQ;AAAEY,MAAAA;KAAO,GAAG,EAAE;IAC9BH,UAAU;AACVyH,IAAAA,SAAS,EAAEC;AACb,GAAC,GAAG7O,gBAAgB,CAACN,OAAO,EAAE;AAAEoP,IAAAA,OAAO,EAAE;AAAK,GAAC,CAAC;AAEhD,EAAA,MAAMzH,qBAAqB,GAAGA,CAACJ,IAAI,EAAED,QAAQ,KAAK;IAChD,MAAMuE,WAAW,GAAG9D,cAAc,CAAC;AAAE+D,MAAAA,WAAW,EAAE;AAAM,KAAC,CAAC;AAC1DR,IAAAA,OAAO,CAACa,IAAI,CACVC,QAAQ,CACNC,MAAM,CAACC,QAAQ,CAACC,QAAQ,EACxB/F,SAAS,CAAC;MAAEe,IAAI;AAAE0E,MAAAA,SAAS,EAAE3E;AAAS,KAAC,EAAEuE,WAAW,CACtD,CACF,CAAC;AACD8C,IAAAA,iBAAiB,CAAC;MAAEpH,IAAI;AAAED,MAAAA;AAAS,KAAC,CAAC;EACvC,CAAC;AAED+H,EAAAA,SAAS,CAAC,MAAM;AACd1H,IAAAA,qBAAqB,CAACqE,kBAAkB,EAAEE,iBAAiB,CAAC;IAC5DxE,iBAAiB,CAAC7E,uBAAuB,CAAC;AAC5C,EAAA,CAAC,EAAE,CAACiI,OAAO,EAAEhD,GAAG,CAAC,CAAC;AAElB,EAAA,IAAIqH,iBAAiB,EAAE;AACrB,IAAA,oBACE7L,GAAA,CAAA,KAAA,EAAA;AAAKK,MAAAA,SAAS,EAAC,gDAAgD;AAAAD,MAAAA,QAAA,eAC7DJ,GAAA,CAACgM,OAAO,EAAA,EAAE;AAAC,KACR,CAAC;AAEV,EAAA;EAEA,oBACE9C,IAAA,CAAAC,QAAA,EAAA;IAAA/I,QAAA,EAAA,cACEJ,GAAA,CAACuH,UAAU,EAAA;MAEPpF,aAAa;MACbuF,iBAAiB;MACjBF,OAAO;MACP7D,cAAc;MACdN,oBAAoB;MACpBsE,kBAAkB;MAClBF,UAAU;MACVG,oBAAoB;MACpByD,iBAAiB;MACjBjH,iBAAiB;AACjBE,MAAAA;AAAK,KAER,CAAC,eACFtE,GAAA,CAACkE,IAAI,EAAA;MAED/B,aAAa;MACbkC,qBAAqB;MACrBF,UAAU;MACVR,cAAc;MACdN,oBAAoB;MACpBK,QAAQ;MACRU,iBAAiB;AACjBE,MAAAA;AAAK,KAER,CAAC,eACFtE,GAAA,CAACiM,WAAW,EAAA;MAERhB,WAAW;MACXM,iBAAiB;MACjB3D,oBAAoB;MACpBwD,cAAc;MAEhBjJ,aAAa,EAAE+J,cAAc,CAACxI,QAAS;AACvC8D,MAAAA,OAAO,EAAEiE;AAAW,KACrB,CAAC;AAAA,GACF,CAAC;AAEP;;;;"}
|
|
1
|
+
{"version":3,"file":"PaymentsDashboard.js","sources":["../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 { 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 authorized: \"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, paymentScreenshotUrl }) => {\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 if (isNotPresent(identifier) && isPresent(paymentScreenshotUrl)) {\n return (\n <Tooltip\n content={t(\"neetoPayments.tooltipContent.screenshotUploadedByCustomer\")}\n position=\"top\"\n >\n <div className=\"text-center\">\n <Typography style=\"body2\">-</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 title: t(\"neetoPayments.common.notes\"),\n dataIndex: \"notes\",\n key: \"notes\",\n width: 250,\n sorter: false,\n position: 10,\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 { useTranslation } from \"react-i18next\";\n\nimport { Table, NoData } from \"neetoui\";\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, useMemo, 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\";\nimport { mergeEnforcedFilters } from \"utils/dashboard\";\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 enforceFilterValues = [],\n isIncludeAllHoldableIds = false,\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\n // Merge enforced filters with user-selected filters for API payload\n // Enforced filters are included in API requests but not reflected in URL\n const apiFilters = useMemo(\n () =>\n mergeEnforcedFilters(\n filters,\n enforceFilterValues,\n filterableColumns\n ),\n [filters, enforceFilterValues, filterableColumns]\n );\n\n const payload = {\n dashboardKind,\n holdableIds,\n isIncludeAllHoldableIds,\n tab,\n filters: apiFilters,\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 holdableIds,\n isExportModalOpen,\n setIsExportModalOpen,\n sortProperties,\n }}\n dashboardKind={DASHBOARD_KIND.payments}\n filters={apiFilters}\n />\n </>\n );\n};\n\nexport default PaymentsDashboard;\n"],"names":["PAYMENT_DASHBOARD_TAB","all","successful","declined","refunded","pending","rejected","confirmation_pending","SEARCH_PROPS","node","key","model","FILTER_COLUMNS","label","t","type","values","map","toLabelAndValue","PAYMENT_PROVIDERS","toUpperCase","value","TAG_STYLE","initiated","cancelled","paid","failed","in_transit","confirmationPending","authorized","PAYMENT_PROVIDER","eupi","DEFAULT_SORT_PROPERTIES","sortBy","orderBy","renderIdentifier","identifier","receiptUrl","paymentScreenshotUrl","isTemporaryIdentifier","startsWith","_jsx","Tooltip","content","position","children","className","Typography","style","isNotPresent","isPresent","CopyButtonWrapper","Button","href","size","target","getTagStyle","status","DEFAULT_TAG_STYLE","preProcessStatus","record","isRefunded","snakeToCamelCase","renderStatus","curry","processedStatus","Tag","humanize","renderPaymentProvider","paymentProvider","renderDate","date","DateFormat","DateTime","renderPayoutTraceId","getDefaultColumns","dashboardKind","columns","title","dataIndex","width","isHidable","render","sorter","formatAmount","formatCurrency","concat","buildSearchProps","searchProps","searchTerm","mergeDeepWith","mergeLeft","trim","buildFilterColumns","payableEntityColumns","reject","isNil","prop","buildRowData","payments","pageProperties","element","index","id","isEmpty","pageSize","page","List","isFetching","setSortProperties","handleTablePagination","views","useTranslation","tab","getQueryParams","paymentsCount","useMemo","isMultipleProvidersExist","getUniquePaymentProviders","length","defaultColumns","allColumns","buildDefaultTableColumns","isAllTab","isTableConfigurationLoading","customizedColumns","hideColumn","useTableConfigurations","TABLE_KEYS","PAYMENTS_TABLE","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","TopSection","filters","setFilters","filterableColumns","searchKeywordProps","setIsExportModalOpen","isFilterPaneOpen","setIsFilterPaneOpen","useState","history","useHistory","isPaymentCountVisible","isFilterButtonVisible","handleFiltersChange","startTransition","handleTabChange","queryParams","toCamelCase","newParams","DEFAULT_PAGE_INDEX","page_size","DEFAULT_PAGE_SIZE","push","buildUrl","window","location","pathname","_jsxs","_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","holdableIds","enforceFilterValues","isIncludeAllHoldableIds","sortProperties","setPageProperties","DEFAULT_PAGE_VALUES","isExportModalOpen","buildFiltersFromURL","apiFilters","mergeEnforcedFilters","payload","data","isPending","isPaymentsLoaidng","useFetchPayments","enabled","useEffect","Spinner","ExportModal","DASHBOARD_KIND"],"mappings":"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"}
|