@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.
Files changed (342) hide show
  1. package/README.md +1 -1
  2. package/dist/AccountsDashboard.js +7 -6
  3. package/dist/AccountsDashboard.js.map +1 -1
  4. package/dist/AdminCancelRecurringPaymentButton.js +4 -17
  5. package/dist/AdminCancelRecurringPaymentButton.js.map +1 -1
  6. package/dist/CashPaymentButton.js +2 -2
  7. package/dist/ConfirmCashPaymentButton.js +2 -2
  8. package/dist/CopyButtonWrapper-B53v2TyQ.js +22 -0
  9. package/dist/CopyButtonWrapper-B53v2TyQ.js.map +1 -0
  10. package/dist/CopyButtonWrapper-CbzDq6Cq.js +22 -0
  11. package/dist/CopyButtonWrapper-CbzDq6Cq.js.map +1 -0
  12. package/dist/CustomerCancelRecurringPaymentForm.js +7 -27
  13. package/dist/CustomerCancelRecurringPaymentForm.js.map +1 -1
  14. package/dist/{ExportModal-r0L3_JqO.js → ExportModal-Bun3pMGn.js} +3 -17
  15. package/dist/ExportModal-Bun3pMGn.js.map +1 -0
  16. package/dist/ExportModal-X-AJPdkc.js +105 -0
  17. package/dist/ExportModal-X-AJPdkc.js.map +1 -0
  18. package/dist/ManualUpiConnect.js +6 -37
  19. package/dist/ManualUpiConnect.js.map +1 -1
  20. package/dist/ManualUpiPayment.js +3 -2
  21. package/dist/ManualUpiPayment.js.map +1 -1
  22. package/dist/ManualUpiPaymentConfirmButton.js +2 -2
  23. package/dist/ManualUpiPaymentRejectButton.js +2 -2
  24. package/dist/PaymentsDashboard.js +10 -20
  25. package/dist/PaymentsDashboard.js.map +1 -1
  26. package/dist/PayoutsDashboard.js +7 -6
  27. package/dist/PayoutsDashboard.js.map +1 -1
  28. package/dist/PayoutsPage.js +6 -22
  29. package/dist/PayoutsPage.js.map +1 -1
  30. package/dist/RazorpayConnect.js +2 -2
  31. package/dist/RazorpayLinkedAccountForm.js +5 -24
  32. package/dist/RazorpayLinkedAccountForm.js.map +1 -1
  33. package/dist/RazorpayPaymentButton.js +6 -4
  34. package/dist/RazorpayPaymentButton.js.map +1 -1
  35. package/dist/RecurringPaymentSettings.js +7 -25
  36. package/dist/RecurringPaymentSettings.js.map +1 -1
  37. package/dist/RefundsDashboard.js +10 -20
  38. package/dist/RefundsDashboard.js.map +1 -1
  39. package/dist/SplitTransfersDashboard.js +10 -35
  40. package/dist/SplitTransfersDashboard.js.map +1 -1
  41. package/dist/StripeCheckoutSetting.js +7 -25
  42. package/dist/StripeCheckoutSetting.js.map +1 -1
  43. package/dist/StripeConnect.js +7 -16
  44. package/dist/StripeConnect.js.map +1 -1
  45. package/dist/StripeManage.js +2 -1
  46. package/dist/StripeManage.js.map +1 -1
  47. package/dist/TaxesDashboard.js +7 -57
  48. package/dist/TaxesDashboard.js.map +1 -1
  49. package/dist/buildStripeTransactionLink.js +1 -1
  50. package/dist/cjs/AccountsDashboard.js +7 -6
  51. package/dist/cjs/AccountsDashboard.js.map +1 -1
  52. package/dist/cjs/AdminCancelRecurringPaymentButton.js +5 -18
  53. package/dist/cjs/AdminCancelRecurringPaymentButton.js.map +1 -1
  54. package/dist/cjs/CashPaymentButton.js +2 -2
  55. package/dist/cjs/ConfirmCashPaymentButton.js +2 -2
  56. package/dist/cjs/CopyButtonWrapper-CXzqqYIp.js +24 -0
  57. package/dist/cjs/CopyButtonWrapper-CXzqqYIp.js.map +1 -0
  58. package/dist/cjs/CopyButtonWrapper-CbcAHUmk.js +24 -0
  59. package/dist/cjs/CopyButtonWrapper-CbcAHUmk.js.map +1 -0
  60. package/dist/cjs/CustomerCancelRecurringPaymentForm.js +9 -29
  61. package/dist/cjs/CustomerCancelRecurringPaymentForm.js.map +1 -1
  62. package/dist/cjs/ExportModal-C7_QKb9q.js +107 -0
  63. package/dist/cjs/ExportModal-C7_QKb9q.js.map +1 -0
  64. package/dist/cjs/{ExportModal-Bo-VRErR.js → ExportModal-DwLOAhIs.js} +4 -18
  65. package/dist/cjs/ExportModal-DwLOAhIs.js.map +1 -0
  66. package/dist/cjs/ManualUpiConnect.js +9 -40
  67. package/dist/cjs/ManualUpiConnect.js.map +1 -1
  68. package/dist/cjs/ManualUpiPayment.js +3 -2
  69. package/dist/cjs/ManualUpiPayment.js.map +1 -1
  70. package/dist/cjs/ManualUpiPaymentConfirmButton.js +2 -2
  71. package/dist/cjs/ManualUpiPaymentRejectButton.js +2 -2
  72. package/dist/cjs/PaymentsDashboard.js +11 -21
  73. package/dist/cjs/PaymentsDashboard.js.map +1 -1
  74. package/dist/cjs/PayoutsDashboard.js +7 -6
  75. package/dist/cjs/PayoutsDashboard.js.map +1 -1
  76. package/dist/cjs/PayoutsPage.js +7 -23
  77. package/dist/cjs/PayoutsPage.js.map +1 -1
  78. package/dist/cjs/RazorpayConnect.js +2 -2
  79. package/dist/cjs/RazorpayLinkedAccountForm.js +7 -26
  80. package/dist/cjs/RazorpayLinkedAccountForm.js.map +1 -1
  81. package/dist/cjs/RazorpayPaymentButton.js +6 -4
  82. package/dist/cjs/RazorpayPaymentButton.js.map +1 -1
  83. package/dist/cjs/RecurringPaymentSettings.js +8 -26
  84. package/dist/cjs/RecurringPaymentSettings.js.map +1 -1
  85. package/dist/cjs/RefundsDashboard.js +11 -21
  86. package/dist/cjs/RefundsDashboard.js.map +1 -1
  87. package/dist/cjs/SplitTransfersDashboard.js +13 -38
  88. package/dist/cjs/SplitTransfersDashboard.js.map +1 -1
  89. package/dist/cjs/StripeCheckoutSetting.js +9 -27
  90. package/dist/cjs/StripeCheckoutSetting.js.map +1 -1
  91. package/dist/cjs/StripeConnect.js +7 -16
  92. package/dist/cjs/StripeConnect.js.map +1 -1
  93. package/dist/cjs/StripeManage.js +2 -1
  94. package/dist/cjs/StripeManage.js.map +1 -1
  95. package/dist/cjs/TaxesDashboard.js +10 -60
  96. package/dist/cjs/TaxesDashboard.js.map +1 -1
  97. package/dist/cjs/buildStripeTransactionLink.js +1 -1
  98. package/dist/cjs/constants.js +1 -1
  99. package/dist/{CopyButtonWrapper-DkI2F6Ty.js → cjs/copy-button-DdBSM5yi.js} +3 -20
  100. package/dist/cjs/copy-button-DdBSM5yi.js.map +1 -0
  101. package/dist/cjs/{dashboard-ByRrf_OD.js → dashboard-BGW0_f30.js} +2 -2
  102. package/dist/cjs/{dashboard-ByRrf_OD.js.map → dashboard-BGW0_f30.js.map} +1 -1
  103. package/dist/cjs/getAddressElementOptions.js +1 -1
  104. package/dist/cjs/getAmountInLargestCurrencyUnit.js +1 -1
  105. package/dist/cjs/getAmountInSmallestCurrencyUnit.js +1 -1
  106. package/dist/cjs/getAmountWithAppliedTax.js +1 -1
  107. package/dist/cjs/getFormattedAmount.js +1 -1
  108. package/dist/cjs/getFormattedDiscountedAmount.js +1 -1
  109. package/dist/cjs/getFormattedDiscountedPercentage.js +1 -1
  110. package/dist/cjs/getFormattedTaxAmount.js +1 -1
  111. package/dist/cjs/getFormattedTipAmount.js +1 -1
  112. package/dist/cjs/getQrCodeValue.js +1 -1
  113. package/dist/cjs/getTaxAmount.js +1 -1
  114. package/dist/cjs/getTipAmount.js +1 -1
  115. package/dist/cjs/hasAmountToPay.js +1 -1
  116. package/dist/cjs/{index-C3dlLi3r.js → index-CpEnC-Gq.js} +23 -20
  117. package/dist/cjs/index-CpEnC-Gq.js.map +1 -0
  118. package/dist/cjs/index-CsYH-ECo.js +21 -0
  119. package/dist/cjs/index-CsYH-ECo.js.map +1 -0
  120. package/dist/cjs/index.js +29 -15
  121. package/dist/cjs/index.js.map +1 -1
  122. package/dist/cjs/main-BnTRneCH.js +7 -0
  123. package/dist/cjs/main-BnTRneCH.js.map +1 -0
  124. package/dist/cjs/renderFunctions-DJ3I4O4j.js +73 -0
  125. package/dist/cjs/renderFunctions-DJ3I4O4j.js.map +1 -0
  126. package/dist/cjs/{renderFunctions-DuZlWOmX.js → renderFunctions-DW33daSm.js} +3 -3
  127. package/dist/cjs/{renderFunctions-DuZlWOmX.js.map → renderFunctions-DW33daSm.js.map} +1 -1
  128. package/dist/cjs/{useAccountsApi-DPB2aG4H.js → useAccountsApi-DaOq20gj.js} +2 -2
  129. package/dist/cjs/{useAccountsApi-DPB2aG4H.js.map → useAccountsApi-DaOq20gj.js.map} +1 -1
  130. package/dist/cjs/useBusinessTypesApi-D_td8mux.js +30 -0
  131. package/dist/cjs/useBusinessTypesApi-D_td8mux.js.map +1 -0
  132. package/dist/cjs/useCheckoutSettingsApi-fGVkfRBQ.js +31 -0
  133. package/dist/cjs/useCheckoutSettingsApi-fGVkfRBQ.js.map +1 -0
  134. package/dist/cjs/useCountriesApi-CWsN_NIT.js +19 -0
  135. package/dist/cjs/useCountriesApi-CWsN_NIT.js.map +1 -0
  136. package/dist/cjs/{useExportsApi-eSMwoLoJ.js → useExportsApi-CupgYUpS.js} +2 -2
  137. package/dist/cjs/{useExportsApi-eSMwoLoJ.js.map → useExportsApi-CupgYUpS.js.map} +1 -1
  138. package/dist/cjs/useExportsApi-rYuPpXWl.js +21 -0
  139. package/dist/cjs/useExportsApi-rYuPpXWl.js.map +1 -0
  140. package/dist/cjs/useFetchData-C85lubOx.js +24 -0
  141. package/dist/cjs/useFetchData-C85lubOx.js.map +1 -0
  142. package/dist/cjs/{useIntegrationsApi-CmJgHHH1.js → useIntegrationsApi-CNrrE2OH.js} +2 -2
  143. package/dist/cjs/{useIntegrationsApi-CmJgHHH1.js.map → useIntegrationsApi-CNrrE2OH.js.map} +1 -1
  144. package/dist/cjs/{usePaymentApi-BjWrpZLW.js → usePaymentApi-B198Hd_a.js} +2 -2
  145. package/dist/cjs/{usePaymentApi-BjWrpZLW.js.map → usePaymentApi-B198Hd_a.js.map} +1 -1
  146. package/dist/cjs/{usePaymentApi-DXJeVvg3.js → usePaymentApi-CuL13mny.js} +2 -2
  147. package/dist/cjs/{usePaymentApi-DXJeVvg3.js.map → usePaymentApi-CuL13mny.js.map} +1 -1
  148. package/dist/cjs/{usePaymentApi-CbNuVb24.js → usePaymentApi-DZYqqfhc.js} +2 -2
  149. package/dist/cjs/{usePaymentApi-CbNuVb24.js.map → usePaymentApi-DZYqqfhc.js.map} +1 -1
  150. package/dist/cjs/usePaymentsApi-ZomyqUIJ.js +22 -0
  151. package/dist/cjs/usePaymentsApi-ZomyqUIJ.js.map +1 -0
  152. package/dist/cjs/{usePlatformApi-B1n8h0bi.js → usePlatformApi-ByvYg8Y-.js} +2 -2
  153. package/dist/cjs/{usePlatformApi-B1n8h0bi.js.map → usePlatformApi-ByvYg8Y-.js.map} +1 -1
  154. package/dist/cjs/useRazorpayPayment.js +2 -2
  155. package/dist/cjs/useRecurringPaymentsApi-DQpypVjt.js +33 -0
  156. package/dist/cjs/useRecurringPaymentsApi-DQpypVjt.js.map +1 -0
  157. package/dist/cjs/useRecurringPaymentsApi-Dow6RjiT.js +22 -0
  158. package/dist/cjs/useRecurringPaymentsApi-Dow6RjiT.js.map +1 -0
  159. package/dist/cjs/useRecurringSettingsApi-CDA5wZnB.js +31 -0
  160. package/dist/cjs/useRecurringSettingsApi-CDA5wZnB.js.map +1 -0
  161. package/dist/cjs/useRefundsApi-enBsXWAk.js +22 -0
  162. package/dist/cjs/useRefundsApi-enBsXWAk.js.map +1 -0
  163. package/dist/cjs/useSplitTransfersApi-BcCKsPCE.js +40 -0
  164. package/dist/cjs/useSplitTransfersApi-BcCKsPCE.js.map +1 -0
  165. package/dist/cjs/useTaxesApi-BBinhUYT.js +65 -0
  166. package/dist/cjs/useTaxesApi-BBinhUYT.js.map +1 -0
  167. package/dist/cjs/useVpasApi-Ts1ivO7S.js +44 -0
  168. package/dist/cjs/useVpasApi-Ts1ivO7S.js.map +1 -0
  169. package/dist/cjs/v2/AccountsDashboard.js +477 -0
  170. package/dist/cjs/v2/AccountsDashboard.js.map +1 -0
  171. package/dist/cjs/v2/AdminCancelRecurringPaymentButton.js +54 -0
  172. package/dist/cjs/v2/AdminCancelRecurringPaymentButton.js.map +1 -0
  173. package/dist/cjs/v2/CashPaymentButton.js +60 -0
  174. package/dist/cjs/v2/CashPaymentButton.js.map +1 -0
  175. package/dist/cjs/v2/ConfirmCashPaymentButton.js +100 -0
  176. package/dist/cjs/v2/ConfirmCashPaymentButton.js.map +1 -0
  177. package/dist/cjs/v2/CustomerCancelRecurringPaymentForm.js +85 -0
  178. package/dist/cjs/v2/CustomerCancelRecurringPaymentForm.js.map +1 -0
  179. package/dist/cjs/v2/ManualUpiConnect.js +227 -0
  180. package/dist/cjs/v2/ManualUpiConnect.js.map +1 -0
  181. package/dist/cjs/v2/ManualUpiPayment.js +253 -0
  182. package/dist/cjs/v2/ManualUpiPayment.js.map +1 -0
  183. package/dist/cjs/v2/ManualUpiPaymentConfirmButton.js +172 -0
  184. package/dist/cjs/v2/ManualUpiPaymentConfirmButton.js.map +1 -0
  185. package/dist/cjs/v2/ManualUpiPaymentRejectButton.js +127 -0
  186. package/dist/cjs/v2/ManualUpiPaymentRejectButton.js.map +1 -0
  187. package/dist/cjs/v2/PaymentKindRestrictionAlert.js +33 -0
  188. package/dist/cjs/v2/PaymentKindRestrictionAlert.js.map +1 -0
  189. package/dist/cjs/v2/PaymentsDashboard.js +581 -0
  190. package/dist/cjs/v2/PaymentsDashboard.js.map +1 -0
  191. package/dist/cjs/v2/PayoutsDashboard.js +516 -0
  192. package/dist/cjs/v2/PayoutsDashboard.js.map +1 -0
  193. package/dist/cjs/v2/PayoutsPage.js +144 -0
  194. package/dist/cjs/v2/PayoutsPage.js.map +1 -0
  195. package/dist/cjs/v2/RazorpayConnect.js +117 -0
  196. package/dist/cjs/v2/RazorpayConnect.js.map +1 -0
  197. package/dist/cjs/v2/RazorpayLinkedAccountForm.js +174 -0
  198. package/dist/cjs/v2/RazorpayLinkedAccountForm.js.map +1 -0
  199. package/dist/cjs/v2/RazorpayPaymentButton.js +145 -0
  200. package/dist/cjs/v2/RazorpayPaymentButton.js.map +1 -0
  201. package/dist/cjs/v2/RecurringPaymentSettings.js +121 -0
  202. package/dist/cjs/v2/RecurringPaymentSettings.js.map +1 -0
  203. package/dist/cjs/v2/RefundsDashboard.js +492 -0
  204. package/dist/cjs/v2/RefundsDashboard.js.map +1 -0
  205. package/dist/cjs/v2/SplitTransfersDashboard.js +943 -0
  206. package/dist/cjs/v2/SplitTransfersDashboard.js.map +1 -0
  207. package/dist/cjs/v2/StripeCheckoutSetting.js +66 -0
  208. package/dist/cjs/v2/StripeCheckoutSetting.js.map +1 -0
  209. package/dist/cjs/v2/StripeConnect.js +384 -0
  210. package/dist/cjs/v2/StripeConnect.js.map +1 -0
  211. package/dist/cjs/v2/StripeManage.js +50 -0
  212. package/dist/cjs/v2/StripeManage.js.map +1 -0
  213. package/dist/cjs/v2/TaxesDashboard.js +338 -0
  214. package/dist/cjs/v2/TaxesDashboard.js.map +1 -0
  215. package/dist/cjs/v2/index.js +125 -0
  216. package/dist/cjs/v2/index.js.map +1 -0
  217. package/dist/constants.js +1 -1
  218. package/dist/{cjs/CopyButtonWrapper-DZ9rE5UR.js → copy-button-EhEBcNP9.js} +2 -24
  219. package/dist/copy-button-EhEBcNP9.js.map +1 -0
  220. package/dist/{dashboard-Uo2nRTH0.js → dashboard-Ba2uhKXD.js} +2 -2
  221. package/dist/{dashboard-Uo2nRTH0.js.map → dashboard-Ba2uhKXD.js.map} +1 -1
  222. package/dist/getAddressElementOptions.js +1 -1
  223. package/dist/getAmountInLargestCurrencyUnit.js +1 -1
  224. package/dist/getAmountInSmallestCurrencyUnit.js +1 -1
  225. package/dist/getAmountWithAppliedTax.js +1 -1
  226. package/dist/getFormattedAmount.js +1 -1
  227. package/dist/getFormattedDiscountedAmount.js +1 -1
  228. package/dist/getFormattedDiscountedPercentage.js +1 -1
  229. package/dist/getFormattedTaxAmount.js +1 -1
  230. package/dist/getFormattedTipAmount.js +1 -1
  231. package/dist/getQrCodeValue.js +1 -1
  232. package/dist/getTaxAmount.js +1 -1
  233. package/dist/getTipAmount.js +1 -1
  234. package/dist/hasAmountToPay.js +1 -1
  235. package/dist/index-CKJlawqs.js +19 -0
  236. package/dist/index-CKJlawqs.js.map +1 -0
  237. package/dist/{index-BbPuNCbC.js → index-CajHy3NQ.js} +24 -21
  238. package/dist/index-CajHy3NQ.js.map +1 -0
  239. package/dist/index.js +28 -16
  240. package/dist/index.js.map +1 -1
  241. package/dist/main-Bqi97Os6.js +5 -0
  242. package/dist/main-Bqi97Os6.js.map +1 -0
  243. package/dist/{renderFunctions-dslScg6B.js → renderFunctions-B9mVn_ag.js} +4 -4
  244. package/dist/{renderFunctions-dslScg6B.js.map → renderFunctions-B9mVn_ag.js.map} +1 -1
  245. package/dist/renderFunctions-SFUBbGqd.js +67 -0
  246. package/dist/renderFunctions-SFUBbGqd.js.map +1 -0
  247. package/dist/{useAccountsApi-C9W3YdvO.js → useAccountsApi-CZyJ4R8Z.js} +3 -3
  248. package/dist/{useAccountsApi-C9W3YdvO.js.map → useAccountsApi-CZyJ4R8Z.js.map} +1 -1
  249. package/dist/useBusinessTypesApi-CS2aPq7Y.js +27 -0
  250. package/dist/useBusinessTypesApi-CS2aPq7Y.js.map +1 -0
  251. package/dist/useCheckoutSettingsApi-D1ZvMA4B.js +28 -0
  252. package/dist/useCheckoutSettingsApi-D1ZvMA4B.js.map +1 -0
  253. package/dist/useCountriesApi-ClXgwNgC.js +17 -0
  254. package/dist/useCountriesApi-ClXgwNgC.js.map +1 -0
  255. package/dist/useExportsApi-C1wjoVYy.js +19 -0
  256. package/dist/useExportsApi-C1wjoVYy.js.map +1 -0
  257. package/dist/{useExportsApi-B0u8EW7i.js → useExportsApi-DA6ThV9b.js} +2 -2
  258. package/dist/{useExportsApi-B0u8EW7i.js.map → useExportsApi-DA6ThV9b.js.map} +1 -1
  259. package/dist/useFetchData-8LLdmA74.js +22 -0
  260. package/dist/useFetchData-8LLdmA74.js.map +1 -0
  261. package/dist/{useIntegrationsApi-AF3A7YvI.js → useIntegrationsApi-BqU-lJql.js} +2 -2
  262. package/dist/{useIntegrationsApi-AF3A7YvI.js.map → useIntegrationsApi-BqU-lJql.js.map} +1 -1
  263. package/dist/{usePaymentApi-qo71Ol63.js → usePaymentApi-BzB3rzNe.js} +2 -2
  264. package/dist/{usePaymentApi-qo71Ol63.js.map → usePaymentApi-BzB3rzNe.js.map} +1 -1
  265. package/dist/{usePaymentApi-BGN0_zsw.js → usePaymentApi-C8fRdHmK.js} +2 -2
  266. package/dist/{usePaymentApi-BGN0_zsw.js.map → usePaymentApi-C8fRdHmK.js.map} +1 -1
  267. package/dist/{usePaymentApi-CUHHIncv.js → usePaymentApi-gvPmTOWg.js} +2 -2
  268. package/dist/{usePaymentApi-CUHHIncv.js.map → usePaymentApi-gvPmTOWg.js.map} +1 -1
  269. package/dist/usePaymentsApi-C2xbgHmw.js +20 -0
  270. package/dist/usePaymentsApi-C2xbgHmw.js.map +1 -0
  271. package/dist/{usePlatformApi-KlkpSYlq.js → usePlatformApi-Dug1pxaH.js} +3 -3
  272. package/dist/{usePlatformApi-KlkpSYlq.js.map → usePlatformApi-Dug1pxaH.js.map} +1 -1
  273. package/dist/useRazorpayPayment.js +2 -2
  274. package/dist/useRecurringPaymentsApi-CkxjkZd2.js +30 -0
  275. package/dist/useRecurringPaymentsApi-CkxjkZd2.js.map +1 -0
  276. package/dist/useRecurringPaymentsApi-dbdBrh4V.js +20 -0
  277. package/dist/useRecurringPaymentsApi-dbdBrh4V.js.map +1 -0
  278. package/dist/useRecurringSettingsApi-B_kTDES9.js +28 -0
  279. package/dist/useRecurringSettingsApi-B_kTDES9.js.map +1 -0
  280. package/dist/useRefundsApi-DSMKTWIQ.js +20 -0
  281. package/dist/useRefundsApi-DSMKTWIQ.js.map +1 -0
  282. package/dist/useSplitTransfersApi-DlRs4wYh.js +36 -0
  283. package/dist/useSplitTransfersApi-DlRs4wYh.js.map +1 -0
  284. package/dist/useTaxesApi-BuPeVUxI.js +60 -0
  285. package/dist/useTaxesApi-BuPeVUxI.js.map +1 -0
  286. package/dist/useVpasApi-wicZ6o_z.js +40 -0
  287. package/dist/useVpasApi-wicZ6o_z.js.map +1 -0
  288. package/dist/v2/AccountsDashboard.js +475 -0
  289. package/dist/v2/AccountsDashboard.js.map +1 -0
  290. package/dist/v2/AdminCancelRecurringPaymentButton.js +52 -0
  291. package/dist/v2/AdminCancelRecurringPaymentButton.js.map +1 -0
  292. package/dist/v2/CashPaymentButton.js +58 -0
  293. package/dist/v2/CashPaymentButton.js.map +1 -0
  294. package/dist/v2/ConfirmCashPaymentButton.js +98 -0
  295. package/dist/v2/ConfirmCashPaymentButton.js.map +1 -0
  296. package/dist/v2/CustomerCancelRecurringPaymentForm.js +83 -0
  297. package/dist/v2/CustomerCancelRecurringPaymentForm.js.map +1 -0
  298. package/dist/v2/ManualUpiConnect.js +206 -0
  299. package/dist/v2/ManualUpiConnect.js.map +1 -0
  300. package/dist/v2/ManualUpiPayment.js +232 -0
  301. package/dist/v2/ManualUpiPayment.js.map +1 -0
  302. package/dist/v2/ManualUpiPaymentConfirmButton.js +151 -0
  303. package/dist/v2/ManualUpiPaymentConfirmButton.js.map +1 -0
  304. package/dist/v2/ManualUpiPaymentRejectButton.js +125 -0
  305. package/dist/v2/ManualUpiPaymentRejectButton.js.map +1 -0
  306. package/dist/v2/PaymentKindRestrictionAlert.js +31 -0
  307. package/dist/v2/PaymentKindRestrictionAlert.js.map +1 -0
  308. package/dist/v2/PaymentsDashboard.js +579 -0
  309. package/dist/v2/PaymentsDashboard.js.map +1 -0
  310. package/dist/v2/PayoutsDashboard.js +514 -0
  311. package/dist/v2/PayoutsDashboard.js.map +1 -0
  312. package/dist/v2/PayoutsPage.js +142 -0
  313. package/dist/v2/PayoutsPage.js.map +1 -0
  314. package/dist/v2/RazorpayConnect.js +115 -0
  315. package/dist/v2/RazorpayConnect.js.map +1 -0
  316. package/dist/v2/RazorpayLinkedAccountForm.js +172 -0
  317. package/dist/v2/RazorpayLinkedAccountForm.js.map +1 -0
  318. package/dist/v2/RazorpayPaymentButton.js +143 -0
  319. package/dist/v2/RazorpayPaymentButton.js.map +1 -0
  320. package/dist/v2/RecurringPaymentSettings.js +100 -0
  321. package/dist/v2/RecurringPaymentSettings.js.map +1 -0
  322. package/dist/v2/RefundsDashboard.js +490 -0
  323. package/dist/v2/RefundsDashboard.js.map +1 -0
  324. package/dist/v2/SplitTransfersDashboard.js +922 -0
  325. package/dist/v2/SplitTransfersDashboard.js.map +1 -0
  326. package/dist/v2/StripeCheckoutSetting.js +64 -0
  327. package/dist/v2/StripeCheckoutSetting.js.map +1 -0
  328. package/dist/v2/StripeConnect.js +363 -0
  329. package/dist/v2/StripeConnect.js.map +1 -0
  330. package/dist/v2/StripeManage.js +48 -0
  331. package/dist/v2/StripeManage.js.map +1 -0
  332. package/dist/v2/TaxesDashboard.js +317 -0
  333. package/dist/v2/TaxesDashboard.js.map +1 -0
  334. package/dist/v2/index.js +94 -0
  335. package/dist/v2/index.js.map +1 -0
  336. package/package.json +33 -21
  337. package/dist/CopyButtonWrapper-DkI2F6Ty.js.map +0 -1
  338. package/dist/ExportModal-r0L3_JqO.js.map +0 -1
  339. package/dist/cjs/CopyButtonWrapper-DZ9rE5UR.js.map +0 -1
  340. package/dist/cjs/ExportModal-Bo-VRErR.js.map +0 -1
  341. package/dist/cjs/index-C3dlLi3r.js.map +0 -1
  342. package/dist/index-BbPuNCbC.js.map +0 -1
@@ -0,0 +1,514 @@
1
+ import { useState, useMemo, useEffect, useTransition } from 'react';
2
+ import { Dialog, Typography, Button, Spinner, Empty, DataTable, Tabs } from '@bigbinary/neeto-atoms';
3
+ import { t } from 'i18next';
4
+ import { useQueryParams, withTitle } from 'neetocommons/v2/react-utils';
5
+ import { buildFiltersFromURL, Bar } from '@bigbinary/neeto-filters-frontend';
6
+ import Header from '@bigbinary/neeto-molecules/v2/Header';
7
+ import SubHeader from '@bigbinary/neeto-molecules/v2/SubHeader';
8
+ import { useTranslation } from 'react-i18next';
9
+ import { u as useExportData, w as withReactQuery } from '../useExportsApi-DA6ThV9b.js';
10
+ import { e as exportChannel, T as TABLE_KEYS } from '../exportChannel-Db0U5gc1.js';
11
+ import { Download } from '@bigbinary/neeto-icons';
12
+ import { u as uuidV4, z as DEFAULT_SORT_PROPERTIES$1 } from '../index-CajHy3NQ.js';
13
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
14
+ import { camelToSnakeCase, removeBy, snakeToCamelCase, isPresent } from 'neetocist';
15
+ import { buildUrl, getQueryParams } from 'neetocommons/utils';
16
+ import { curry, insert, mergeLeft, assoc } from 'ramda';
17
+ import { useHistory } from 'react-router-dom';
18
+ import { b as buildDefaultPageProperties, a as buildPayload, c as buildRowData } from '../dashboard-Ba2uhKXD.js';
19
+ import { r as renderStatus, a as renderDate } from '../renderFunctions-SFUBbGqd.js';
20
+ import { C as CopyButtonWrapper } from '../CopyButtonWrapper-B53v2TyQ.js';
21
+ import { DEFAULT_PAGE_SIZE, DEFAULT_PAGE_INDEX } from 'neetocommons/constants';
22
+ import { useTableConfigurations } from '@bigbinary/neeto-molecules/v2/Columns';
23
+ import TableWrapper from '@bigbinary/neeto-molecules/v2/TableWrapper';
24
+ import { b as useFetchStripePayouts, c as useFetchStripePlatformPayouts } from '../usePlatformApi-Dug1pxaH.js';
25
+ import '@tanstack/react-query';
26
+ import '@tanstack/react-query-devtools';
27
+ import 'axios';
28
+ import 'decimal.js';
29
+ import '@bigbinary/neeto-molecules/v2/DateFormat';
30
+ import '@bigbinary/neeto-molecules/v2/CopyToClipboardButton';
31
+ import '../copy-button-EhEBcNP9.js';
32
+ import 'neetocommons/react-utils';
33
+ import 'qs';
34
+ import '../queryConstants-8c7Nd8ML.js';
35
+
36
+ const TAB = {
37
+ all: "all",
38
+ paid: "paid",
39
+ inTransit: "inTransit",
40
+ failed: "failed",
41
+ canceled: "canceled",
42
+ pending: "pending"
43
+ };
44
+ const TABS = Object.values(TAB);
45
+ const SEARCH_PROPS = {
46
+ key: "keyword",
47
+ node: "identifier,destination_identifier",
48
+ model: "NeetoPaymentsEngine::Payout"
49
+ };
50
+ const DASHBOARD_MANDATORY_COLUMNS = ["id", "status", "identifier"];
51
+ const FILTER_COLUMNS = [{
52
+ key: "created_at",
53
+ label: t("neetoPayments.common.createdAt"),
54
+ node: "created_at",
55
+ type: "date",
56
+ showRuleSelector: true
57
+ }, {
58
+ key: "arrival_date",
59
+ label: t("neetoPayments.common.arrivalDate"),
60
+ node: "arrival_date",
61
+ type: "date",
62
+ showRuleSelector: true
63
+ }];
64
+ const DEFAULT_SORT_PROPERTIES = {
65
+ sortBy: "created_at",
66
+ orderBy: "DESC"
67
+ };
68
+
69
+ const ExportModal = ({
70
+ showExportModal,
71
+ setShowExportModal,
72
+ tab,
73
+ filters,
74
+ sortProperties = {}
75
+ }) => {
76
+ const {
77
+ t
78
+ } = useTranslation();
79
+ const [downloadUrl, setDownloadUrl] = useState("");
80
+ const [isGenerating, setIsGenerating] = useState(false);
81
+ const {
82
+ mutate: exportCsv,
83
+ isPending
84
+ } = useExportData();
85
+ const isFileLoading = isPending || isGenerating;
86
+ const token = useMemo(() => `payout-report-${uuidV4()}`, []);
87
+ const receivedCallback = data => {
88
+ if (!data.download_url) return;
89
+ setDownloadUrl(data.download_url);
90
+ setIsGenerating(false);
91
+ };
92
+ const handleGenerateClick = () => {
93
+ const payload = {
94
+ kind: "payout",
95
+ token,
96
+ filters,
97
+ tab,
98
+ ...sortProperties
99
+ };
100
+ exportCsv(payload, {
101
+ onSuccess: () => {
102
+ setDownloadUrl("");
103
+ setIsGenerating(true);
104
+ }
105
+ });
106
+ };
107
+ useEffect(() => {
108
+ if (showExportModal) {
109
+ const channel = exportChannel(token, receivedCallback);
110
+ setDownloadUrl("");
111
+ setIsGenerating(false);
112
+ return () => {
113
+ channel.disconnected();
114
+ };
115
+ }
116
+ return undefined;
117
+ }, [showExportModal, token]);
118
+ const onClose = () => setShowExportModal(false);
119
+ return /*#__PURE__*/jsxs(Dialog, {
120
+ onClose,
121
+ isOpen: showExportModal,
122
+ children: [/*#__PURE__*/jsx(Dialog.Header, {
123
+ children: /*#__PURE__*/jsx(Dialog.Title, {
124
+ children: t("neetoPayments.export.title.payout")
125
+ })
126
+ }), /*#__PURE__*/jsx(Dialog.Body, {
127
+ children: isFileLoading ? /*#__PURE__*/jsx(Typography, {
128
+ variant: "body2",
129
+ children: t("neetoPayments.export.pleaseWait")
130
+ }) : /*#__PURE__*/jsx(Typography, {
131
+ variant: "body2",
132
+ children: downloadUrl ? t("neetoPayments.export.fileReady") : t("neetoPayments.export.download.payout")
133
+ })
134
+ }), /*#__PURE__*/jsx(Dialog.Footer, {
135
+ className: "space-x-2",
136
+ children: downloadUrl ? /*#__PURE__*/jsx(Button, {
137
+ "data-testid": "neeto-payments-download-button",
138
+ href: downloadUrl,
139
+ icon: Download,
140
+ label: t("neetoPayments.common.download"),
141
+ onClick: onClose
142
+ }) : /*#__PURE__*/jsxs(Fragment, {
143
+ children: [/*#__PURE__*/jsx(Button, {
144
+ "data-testid": "cancel-button",
145
+ disabled: isFileLoading,
146
+ label: t("neetoPayments.common.cancel"),
147
+ variant: "outline",
148
+ onClick: onClose
149
+ }), /*#__PURE__*/jsx(Button, {
150
+ "data-testid": "neeto-payments-export-button",
151
+ disabled: isFileLoading,
152
+ label: t("neetoPayments.common.export"),
153
+ loading: isFileLoading,
154
+ onClick: handleGenerateClick
155
+ })]
156
+ })
157
+ })]
158
+ });
159
+ };
160
+
161
+ const COLUMNS = [{
162
+ header: t("neetoPayments.common.id"),
163
+ id: "id",
164
+ accessorKey: "id",
165
+ size: 85,
166
+ enableHiding: false
167
+ }, {
168
+ header: t("neetoPayments.common.status"),
169
+ id: "status",
170
+ accessorKey: "status",
171
+ size: 150,
172
+ cell: ({
173
+ row
174
+ }) => renderStatus("payout")(row.getValue("status"), row.original),
175
+ enableSorting: true,
176
+ enableHiding: false
177
+ }, {
178
+ header: t("neetoPayments.common.amount"),
179
+ id: "amount",
180
+ accessorKey: "amount",
181
+ size: 150,
182
+ enableSorting: true
183
+ }, {
184
+ header: t("neetoPayments.common.createdAt"),
185
+ id: "createdAt",
186
+ accessorKey: "createdAt",
187
+ size: 220,
188
+ cell: ({
189
+ row
190
+ }) => renderDate(row.getValue("createdAt")),
191
+ enableSorting: true
192
+ }, {
193
+ header: t("neetoPayments.common.arrivalDate"),
194
+ id: "arrivalDate",
195
+ accessorKey: "arrivalDate",
196
+ size: 220,
197
+ cell: ({
198
+ row
199
+ }) => renderDate(row.getValue("arrivalDate")),
200
+ enableSorting: true
201
+ }, {
202
+ header: t("neetoPayments.common.destinationIdentifier"),
203
+ id: "destinationIdentifier",
204
+ accessorKey: "destinationIdentifier",
205
+ size: 300
206
+ }];
207
+ const IDENTIFIER_COLUMN = {
208
+ header: t("neetoPayments.common.identifier"),
209
+ id: "identifier",
210
+ accessorKey: "identifier",
211
+ size: 300,
212
+ enableHiding: false
213
+ };
214
+
215
+ const processTab = status => camelToSnakeCase(status).split("_").join(" ");
216
+ const renderPayoutIdentifier = curry((route, {
217
+ identifier = "",
218
+ id = ""
219
+ }) => /*#__PURE__*/jsx(CopyButtonWrapper, {
220
+ content: identifier,
221
+ children: /*#__PURE__*/jsx(Button, {
222
+ label: identifier,
223
+ size: "sm",
224
+ to: buildUrl(route, {
225
+ id
226
+ }),
227
+ variant: "link"
228
+ })
229
+ }));
230
+
231
+ const useFiltersAndPagination = payoutsPageRoute => {
232
+ const history = useHistory();
233
+ const [isFilterButtonVisible, setIsFilterButtonVisible] = useState(false);
234
+ const [isFilterPaneOpen, setIsFilterPaneOpen] = useState(false);
235
+ const [pageProperties, setPageProperties] = useState(buildDefaultPageProperties(TABS));
236
+ const [sortProperties, setSortProperties] = useState(DEFAULT_SORT_PROPERTIES$1);
237
+ const {
238
+ tab = TAB.all
239
+ } = useQueryParams();
240
+ const {
241
+ searchTerm = ""
242
+ } = getQueryParams();
243
+ const searchKeywordProps = {
244
+ ...SEARCH_PROPS,
245
+ key: "search_term",
246
+ value: searchTerm.trim()
247
+ };
248
+ const [filters, setFilters] = useState(buildFiltersFromURL([...FILTER_COLUMNS, searchKeywordProps]));
249
+ const [dataSize, setDataSize] = useState(null);
250
+ const identifierColumn = {
251
+ ...IDENTIFIER_COLUMN,
252
+ cell: ({
253
+ row
254
+ }) => renderPayoutIdentifier(payoutsPageRoute)(row.original)
255
+ };
256
+ const columns = insert(1, identifierColumn, COLUMNS);
257
+ const columnData = tab !== TAB.all ? removeBy({
258
+ id: "status"
259
+ }, columns) : columns;
260
+ const handleTabChange = tab => {
261
+ setDataSize(null);
262
+ const queryParams = getQueryParams({
263
+ toCamelCase: false
264
+ });
265
+ const newParams = {
266
+ tab,
267
+ page: pageProperties[tab]?.page,
268
+ page_size: pageProperties[tab]?.pageSize
269
+ };
270
+ history.push(buildUrl(window.location.pathname, mergeLeft(newParams, queryParams)));
271
+ };
272
+ return {
273
+ isFilterButtonVisible,
274
+ isFilterPaneOpen,
275
+ pageProperties,
276
+ filters,
277
+ searchKeywordProps,
278
+ tab,
279
+ sortProperties,
280
+ columnData,
281
+ dataSize,
282
+ setDataSize,
283
+ setIsFilterButtonVisible,
284
+ setIsFilterPaneOpen,
285
+ setPageProperties,
286
+ setFilters,
287
+ handleTabChange,
288
+ setSortProperties
289
+ };
290
+ };
291
+
292
+ const useFetchData = ({
293
+ isPlatformEnabled,
294
+ payload
295
+ }) => {
296
+ const data = {};
297
+ const kind = isPlatformEnabled ? "platform" : "connected";
298
+ const tab = snakeToCamelCase(payload?.tab || "");
299
+ data.connected = useFetchStripePayouts(payload, {
300
+ enabled: !isPlatformEnabled
301
+ });
302
+ data.platform = useFetchStripePlatformPayouts(payload, {
303
+ enabled: isPlatformEnabled
304
+ });
305
+ return {
306
+ data: data[kind]?.data?.payouts,
307
+ dataSize: data[kind]?.data?.views?.[tab],
308
+ isDataLoading: data[kind]?.isLoading,
309
+ isDataFetching: data[kind]?.isFetching
310
+ };
311
+ };
312
+
313
+ const List = ({
314
+ columnData,
315
+ filters,
316
+ pageProperties,
317
+ setDataSize,
318
+ setIsFilterButtonVisible,
319
+ setPageProperties,
320
+ setSortProperties,
321
+ sortProperties,
322
+ tab,
323
+ isPlatformEnabled
324
+ }) => {
325
+ const history = useHistory();
326
+ const {
327
+ t
328
+ } = useTranslation();
329
+ const {
330
+ isTableConfigurationLoading,
331
+ customizedColumns,
332
+ hideColumn
333
+ } = useTableConfigurations(TABLE_KEYS.PAYOUTS_TABLE, columnData);
334
+ const {
335
+ data: payouts,
336
+ isDataLoading,
337
+ dataSize,
338
+ isDataFetching
339
+ } = useFetchData({
340
+ payload: buildPayload({
341
+ filters,
342
+ pageProperties,
343
+ sortProperties,
344
+ tab
345
+ }),
346
+ isPlatformEnabled
347
+ });
348
+ useEffect(() => {
349
+ setIsFilterButtonVisible(isPresent(payouts) || isPresent(filters));
350
+ setDataSize(dataSize);
351
+ }, [payouts]);
352
+ const handleTablePagination = (page, pageSize) => {
353
+ const queryParams = getQueryParams({
354
+ toCamelCase: false
355
+ });
356
+ history.push(buildUrl(window.location.pathname, mergeLeft({
357
+ page,
358
+ page_size: pageSize
359
+ }, queryParams)));
360
+ setPageProperties(assoc(tab, {
361
+ page,
362
+ pageSize
363
+ }));
364
+ };
365
+ useEffect(() => {
366
+ handleTablePagination(DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE);
367
+ setSortProperties(DEFAULT_SORT_PROPERTIES);
368
+ }, [filters, tab]);
369
+ if (isDataLoading) {
370
+ return /*#__PURE__*/jsx("div", {
371
+ className: "flex h-full w-full items-center justify-center",
372
+ children: /*#__PURE__*/jsx(Spinner, {})
373
+ });
374
+ }
375
+ if (dataSize <= 0 || !isPresent(payouts)) {
376
+ return /*#__PURE__*/jsx("div", {
377
+ className: "flex h-full w-full items-center justify-center",
378
+ children: /*#__PURE__*/jsx(Empty, {
379
+ title: t(`neetoPayments.emptyState.payouts.${tab}`)
380
+ })
381
+ });
382
+ }
383
+ return /*#__PURE__*/jsx(TableWrapper, {
384
+ hasPagination: dataSize > pageProperties[tab]?.pageSize,
385
+ children: /*#__PURE__*/jsx(DataTable, {
386
+ allowRowClick: false,
387
+ columns: customizedColumns,
388
+ currentPage: pageProperties[tab]?.page,
389
+ data: buildRowData({
390
+ data: payouts,
391
+ pageProperties,
392
+ tab
393
+ }),
394
+ enableURLPagination: false,
395
+ enableURLSort: false,
396
+ loading: isDataFetching || isTableConfigurationLoading,
397
+ totalCount: dataSize,
398
+ onColumnHide: id => hideColumn(id),
399
+ onPageChange: page => handleTablePagination(page, pageProperties[tab]?.pageSize),
400
+ onSort: sort => sort ? setSortProperties({
401
+ sortBy: camelToSnakeCase(sort.field),
402
+ orderBy: sort.order === "ascend" ? "ASC" : "DESC"
403
+ }) : setSortProperties(DEFAULT_SORT_PROPERTIES)
404
+ })
405
+ });
406
+ };
407
+
408
+ const PayoutsDashboard = ({
409
+ payoutsPageRoute,
410
+ isPlatformEnabled
411
+ }) => {
412
+ const [_, startTransition] = useTransition();
413
+ const {
414
+ t
415
+ } = useTranslation();
416
+ const [showExportModal, setShowExportModal] = useState(false);
417
+ const {
418
+ isFilterButtonVisible,
419
+ isFilterPaneOpen,
420
+ pageProperties,
421
+ filters,
422
+ searchKeywordProps,
423
+ tab,
424
+ sortProperties,
425
+ columnData,
426
+ dataSize,
427
+ setDataSize,
428
+ setIsFilterButtonVisible,
429
+ setIsFilterPaneOpen,
430
+ setPageProperties,
431
+ setFilters,
432
+ handleTabChange,
433
+ setSortProperties
434
+ } = useFiltersAndPagination(payoutsPageRoute);
435
+ const isTabsVisible = isFilterButtonVisible || tab !== "all";
436
+ const handleFiltersChange = filters => {
437
+ startTransition(() => {
438
+ setFilters(filters);
439
+ });
440
+ };
441
+ return /*#__PURE__*/jsxs(Fragment, {
442
+ children: [/*#__PURE__*/jsx(Header, {
443
+ title: t("neetoPayments.title.payouts"),
444
+ searchProps: isFilterButtonVisible && {
445
+ placeholder: t("neetoPayments.common.search"),
446
+ className: "w-80"
447
+ }
448
+ }), isTabsVisible && /*#__PURE__*/jsx(Tabs, {
449
+ value: tab,
450
+ onValueChange: handleTabChange,
451
+ children: /*#__PURE__*/jsx(Tabs.List, {
452
+ children: TABS.map(item => /*#__PURE__*/jsx(Tabs.Item, {
453
+ value: item,
454
+ children: t(`neetoPayments.common.${item}`)
455
+ }, item))
456
+ })
457
+ }), /*#__PURE__*/jsx(SubHeader, {
458
+ className: "my-4",
459
+ leftActionBlock: dataSize > 0 && /*#__PURE__*/jsx(Typography, {
460
+ className: "me-2 font-semibold",
461
+ variant: "body1",
462
+ children: tab === TAB.all ? t("neetoPayments.countOf.payout", {
463
+ count: dataSize
464
+ }) : t("neetoPayments.countOf.payoutWithStatus", {
465
+ count: dataSize,
466
+ status: processTab(tab)
467
+ })
468
+ }),
469
+ rightActionBlock: isFilterButtonVisible && /*#__PURE__*/jsx(SubHeader.RightBlock, {
470
+ columnsButtonProps: {
471
+ columnData,
472
+ fixedColumns: DASHBOARD_MANDATORY_COLUMNS,
473
+ tableKey: TABLE_KEYS.PAYOUTS_TABLE
474
+ },
475
+ downloadButtonProps: {
476
+ onClick: () => setShowExportModal(true)
477
+ },
478
+ filterProps: {
479
+ columns: FILTER_COLUMNS,
480
+ isOpen: isFilterPaneOpen,
481
+ keyword: searchKeywordProps,
482
+ setIsOpen: setIsFilterPaneOpen,
483
+ onChange: handleFiltersChange
484
+ }
485
+ })
486
+ }), /*#__PURE__*/jsx(Bar, {
487
+ columns: FILTER_COLUMNS,
488
+ keyword: searchKeywordProps,
489
+ setIsPaneOpen: setIsFilterPaneOpen,
490
+ onChange: handleFiltersChange
491
+ }), /*#__PURE__*/jsx(List, {
492
+ columnData,
493
+ filters,
494
+ isPlatformEnabled,
495
+ pageProperties,
496
+ setDataSize,
497
+ setIsFilterButtonVisible,
498
+ setPageProperties,
499
+ setSortProperties,
500
+ sortProperties,
501
+ tab
502
+ }), /*#__PURE__*/jsx(ExportModal, {
503
+ filters,
504
+ setShowExportModal,
505
+ showExportModal,
506
+ sortProperties,
507
+ tab
508
+ })]
509
+ });
510
+ };
511
+ var index = withTitle(withReactQuery(PayoutsDashboard), t("neetoPayments.title.payouts"));
512
+
513
+ export { index as default };
514
+ //# sourceMappingURL=PayoutsDashboard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PayoutsDashboard.js","sources":["../../app/javascript/src/v2/components/PayoutsDashboard/constants/index.js","../../app/javascript/src/v2/components/PayoutsDashboard/ExportModal.jsx","../../app/javascript/src/v2/components/PayoutsDashboard/constants/columns.js","../../app/javascript/src/v2/components/PayoutsDashboard/utils/renderFunctions.jsx","../../app/javascript/src/v2/components/PayoutsDashboard/hooks/useFiltersAndPagination.js","../../app/javascript/src/v2/components/PayoutsDashboard/hooks/useFetchData.js","../../app/javascript/src/v2/components/PayoutsDashboard/List.jsx","../../app/javascript/src/v2/components/PayoutsDashboard/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nexport const TAB = {\n all: \"all\",\n paid: \"paid\",\n inTransit: \"inTransit\",\n failed: \"failed\",\n canceled: \"canceled\",\n pending: \"pending\",\n};\n\nexport const TABS = Object.values(TAB);\n\nexport const SEARCH_PROPS = {\n key: \"keyword\",\n node: \"identifier,destination_identifier\",\n model: \"NeetoPaymentsEngine::Payout\",\n};\n\nexport const DASHBOARD_MANDATORY_COLUMNS = [\"id\", \"status\", \"identifier\"];\n\nexport const FILTER_COLUMNS = [\n {\n key: \"created_at\",\n label: t(\"neetoPayments.common.createdAt\"),\n node: \"created_at\",\n type: \"date\",\n showRuleSelector: true,\n },\n {\n key: \"arrival_date\",\n label: t(\"neetoPayments.common.arrivalDate\"),\n node: \"arrival_date\",\n type: \"date\",\n showRuleSelector: true,\n },\n];\n\nexport const DEFAULT_SORT_PROPERTIES = {\n sortBy: \"created_at\",\n orderBy: \"DESC\",\n};\n\nexport const STRIPE_PAYOUTS_TABLE_HIDDEN_COLUMNS_STORAGE_KEY =\n \"stripePayoutsDashboard\";\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport { Button, Dialog, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Download } from \"neetoicons\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useExportData } from \"hooks/reactQuery/stripe/useExportsApi\";\nimport exportChannel from \"src/channels/exportChannel\";\nimport { uuidV4 } from \"utils\";\n\nconst ExportModal = ({\n showExportModal,\n setShowExportModal,\n tab,\n filters,\n sortProperties = {},\n}) => {\n const { t } = useTranslation();\n const [downloadUrl, setDownloadUrl] = useState(\"\");\n const [isGenerating, setIsGenerating] = useState(false);\n\n const { mutate: exportCsv, isPending } = useExportData();\n const isFileLoading = isPending || isGenerating;\n\n const token = useMemo(() => `payout-report-${uuidV4()}`, []);\n\n const receivedCallback = data => {\n if (!data.download_url) return;\n setDownloadUrl(data.download_url);\n setIsGenerating(false);\n };\n\n const handleGenerateClick = () => {\n const payload = {\n kind: \"payout\",\n token,\n filters,\n tab,\n ...sortProperties,\n };\n\n exportCsv(payload, {\n onSuccess: () => {\n setDownloadUrl(\"\");\n setIsGenerating(true);\n },\n });\n };\n\n useEffect(() => {\n if (showExportModal) {\n const channel = exportChannel(token, receivedCallback);\n setDownloadUrl(\"\");\n setIsGenerating(false);\n\n return () => {\n channel.disconnected();\n };\n }\n\n return undefined;\n }, [showExportModal, token]);\n\n const onClose = () => setShowExportModal(false);\n\n return (\n <Dialog {...{ onClose }} isOpen={showExportModal}>\n <Dialog.Header>\n <Dialog.Title>{t(\"neetoPayments.export.title.payout\")}</Dialog.Title>\n </Dialog.Header>\n <Dialog.Body>\n {isFileLoading ? (\n <Typography variant=\"body2\">\n {t(\"neetoPayments.export.pleaseWait\")}\n </Typography>\n ) : (\n <Typography variant=\"body2\">\n {downloadUrl\n ? t(\"neetoPayments.export.fileReady\")\n : t(\"neetoPayments.export.download.payout\")}\n </Typography>\n )}\n </Dialog.Body>\n <Dialog.Footer className=\"space-x-2\">\n {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={isFileLoading}\n label={t(\"neetoPayments.common.cancel\")}\n variant=\"outline\"\n onClick={onClose}\n />\n <Button\n data-testid=\"neeto-payments-export-button\"\n disabled={isFileLoading}\n label={t(\"neetoPayments.common.export\")}\n loading={isFileLoading}\n onClick={handleGenerateClick}\n />\n </>\n )}\n </Dialog.Footer>\n </Dialog>\n );\n};\n\nexport default ExportModal;\n","import { t } from \"i18next\";\n\nimport { renderDate, renderStatus } from \"v2/utils/renderFunctions\";\n\nexport const COLUMNS = [\n {\n header: t(\"neetoPayments.common.id\"),\n id: \"id\",\n accessorKey: \"id\",\n size: 85,\n enableHiding: false,\n },\n {\n header: t(\"neetoPayments.common.status\"),\n id: \"status\",\n accessorKey: \"status\",\n size: 150,\n cell: ({ row }) =>\n renderStatus(\"payout\")(row.getValue(\"status\"), row.original),\n enableSorting: true,\n enableHiding: false,\n },\n {\n header: t(\"neetoPayments.common.amount\"),\n id: \"amount\",\n accessorKey: \"amount\",\n size: 150,\n enableSorting: true,\n },\n {\n header: t(\"neetoPayments.common.createdAt\"),\n id: \"createdAt\",\n accessorKey: \"createdAt\",\n size: 220,\n cell: ({ row }) => renderDate(row.getValue(\"createdAt\")),\n enableSorting: true,\n },\n {\n header: t(\"neetoPayments.common.arrivalDate\"),\n id: \"arrivalDate\",\n accessorKey: \"arrivalDate\",\n size: 220,\n cell: ({ row }) => renderDate(row.getValue(\"arrivalDate\")),\n enableSorting: true,\n },\n {\n header: t(\"neetoPayments.common.destinationIdentifier\"),\n id: \"destinationIdentifier\",\n accessorKey: \"destinationIdentifier\",\n size: 300,\n },\n];\n\nexport const IDENTIFIER_COLUMN = {\n header: t(\"neetoPayments.common.identifier\"),\n id: \"identifier\",\n accessorKey: \"identifier\",\n size: 300,\n enableHiding: false,\n};\n","import { Button } from \"@bigbinary/neeto-atoms\";\nimport { camelToSnakeCase } from \"neetocist\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { curry } from \"ramda\";\n\nimport CopyButtonWrapper from \"v2/components/Common/CopyButtonWrapper\";\n\nexport const processTab = status =>\n camelToSnakeCase(status).split(\"_\").join(\" \");\n\nexport const renderPayoutIdentifier = curry(\n (route, { identifier = \"\", id = \"\" }) => (\n <CopyButtonWrapper content={identifier}>\n <Button\n label={identifier}\n size=\"sm\"\n to={buildUrl(route, { id })}\n variant=\"link\"\n />\n </CopyButtonWrapper>\n )\n);\n","import { useState } from \"react\";\n\nimport { removeBy } from \"neetocist\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\nimport { buildFiltersFromURL } from \"neetofilters\";\nimport { insert, mergeLeft } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { DEFAULT_SORT_PROPERTIES } from \"src/constants\";\nimport { buildDefaultPageProperties } from \"utils/dashboard\";\n\nimport { FILTER_COLUMNS, TAB, TABS, SEARCH_PROPS } from \"../constants\";\nimport { COLUMNS, IDENTIFIER_COLUMN } from \"../constants/columns\";\nimport { renderPayoutIdentifier } from \"../utils/renderFunctions\";\n\nexport const useFiltersAndPagination = payoutsPageRoute => {\n const history = useHistory();\n const [isFilterButtonVisible, setIsFilterButtonVisible] = useState(false);\n const [isFilterPaneOpen, setIsFilterPaneOpen] = useState(false);\n const [pageProperties, setPageProperties] = useState(\n buildDefaultPageProperties(TABS)\n );\n const [sortProperties, setSortProperties] = useState(DEFAULT_SORT_PROPERTIES);\n const { tab = TAB.all } = useQueryParams();\n\n const { searchTerm = \"\" } = getQueryParams();\n const searchKeywordProps = {\n ...SEARCH_PROPS,\n key: \"search_term\",\n value: searchTerm.trim(),\n };\n\n const [filters, setFilters] = useState(\n buildFiltersFromURL([...FILTER_COLUMNS, searchKeywordProps])\n );\n const [dataSize, setDataSize] = useState(null);\n\n const identifierColumn = {\n ...IDENTIFIER_COLUMN,\n cell: ({ row }) => renderPayoutIdentifier(payoutsPageRoute)(row.original),\n };\n\n const columns = insert(1, identifierColumn, COLUMNS);\n\n const columnData =\n tab !== TAB.all ? removeBy({ id: \"status\" }, columns) : columns;\n\n const handleTabChange = tab => {\n setDataSize(null);\n const queryParams = getQueryParams({ toCamelCase: false });\n const newParams = {\n tab,\n page: pageProperties[tab]?.page,\n page_size: pageProperties[tab]?.pageSize,\n };\n\n history.push(\n buildUrl(window.location.pathname, mergeLeft(newParams, queryParams))\n );\n };\n\n return {\n isFilterButtonVisible,\n isFilterPaneOpen,\n pageProperties,\n filters,\n searchKeywordProps,\n tab,\n sortProperties,\n columnData,\n dataSize,\n setDataSize,\n setIsFilterButtonVisible,\n setIsFilterPaneOpen,\n setPageProperties,\n setFilters,\n handleTabChange,\n setSortProperties,\n };\n};\n","import { snakeToCamelCase } from \"neetocist\";\n\nimport { useFetchStripePayouts } from \"hooks/reactQuery/stripe/useConnectApi\";\nimport { useFetchStripePlatformPayouts } from \"hooks/reactQuery/stripe/usePlatformApi\";\n\nexport const useFetchData = ({ isPlatformEnabled, payload }) => {\n const data = {};\n const kind = isPlatformEnabled ? \"platform\" : \"connected\";\n const tab = snakeToCamelCase(payload?.tab || \"\");\n\n data.connected = useFetchStripePayouts(payload, {\n enabled: !isPlatformEnabled,\n });\n\n data.platform = useFetchStripePlatformPayouts(payload, {\n enabled: isPlatformEnabled,\n });\n\n return {\n data: data[kind]?.data?.payouts,\n dataSize: data[kind]?.data?.views?.[tab],\n isDataLoading: data[kind]?.isLoading,\n isDataFetching: data[kind]?.isFetching,\n };\n};\n","import { useEffect } from \"react\";\n\nimport { DataTable, Empty, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { camelToSnakeCase, isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\nimport { useTableConfigurations } from \"neetomolecules/v2/Columns\";\nimport TableWrapper from \"neetomolecules/v2/TableWrapper\";\nimport { assoc, mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { TABLE_KEYS } from \"src/constants/tableKeys\";\nimport { buildPayload, buildRowData } from \"utils/dashboard\";\n\nimport { DEFAULT_SORT_PROPERTIES } from \"./constants\";\nimport { useFetchData } from \"./hooks/useFetchData\";\n\nconst List = ({\n columnData,\n filters,\n pageProperties,\n setDataSize,\n setIsFilterButtonVisible,\n setPageProperties,\n setSortProperties,\n sortProperties,\n tab,\n isPlatformEnabled,\n}) => {\n const history = useHistory();\n const { t } = useTranslation();\n\n const { isTableConfigurationLoading, customizedColumns, hideColumn } =\n useTableConfigurations(TABLE_KEYS.PAYOUTS_TABLE, columnData);\n\n const {\n data: payouts,\n isDataLoading,\n dataSize,\n isDataFetching,\n } = useFetchData({\n payload: buildPayload({ filters, pageProperties, sortProperties, tab }),\n isPlatformEnabled,\n });\n\n useEffect(() => {\n setIsFilterButtonVisible(isPresent(payouts) || isPresent(filters));\n setDataSize(dataSize);\n }, [payouts]);\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(assoc(tab, { 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 (isDataLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (dataSize <= 0 || !isPresent(payouts)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Empty title={t(`neetoPayments.emptyState.payouts.${tab}`)} />\n </div>\n );\n }\n\n return (\n <TableWrapper hasPagination={dataSize > pageProperties[tab]?.pageSize}>\n <DataTable\n allowRowClick={false}\n columns={customizedColumns}\n currentPage={pageProperties[tab]?.page}\n data={buildRowData({ data: payouts, pageProperties, tab })}\n enableURLPagination={false}\n enableURLSort={false}\n loading={isDataFetching || isTableConfigurationLoading}\n totalCount={dataSize}\n onColumnHide={id => hideColumn(id)}\n onPageChange={page =>\n handleTablePagination(page, pageProperties[tab]?.pageSize)\n }\n onSort={sort =>\n sort\n ? setSortProperties({\n sortBy: camelToSnakeCase(sort.field),\n orderBy: sort.order === \"ascend\" ? \"ASC\" : \"DESC\",\n })\n : setSortProperties(DEFAULT_SORT_PROPERTIES)\n }\n />\n </TableWrapper>\n );\n};\n\nexport default List;\n","import { useState, useTransition } from \"react\";\n\nimport { Tabs, Typography } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { withTitle } from \"neetocommons/v2/react-utils\";\nimport { Bar as FiltersBar } from \"neetofilters\";\nimport Header from \"neetomolecules/v2/Header\";\nimport SubHeader from \"neetomolecules/v2/SubHeader\";\nimport { useTranslation } from \"react-i18next\";\n\nimport withReactQuery from \"components/Common/withReactQuery\";\nimport { TABLE_KEYS } from \"src/constants/tableKeys\";\n\nimport {\n DASHBOARD_MANDATORY_COLUMNS,\n FILTER_COLUMNS,\n TAB,\n TABS,\n} from \"./constants\";\nimport ExportModal from \"./ExportModal\";\nimport { useFiltersAndPagination } from \"./hooks/useFiltersAndPagination\";\nimport List from \"./List\";\nimport { processTab } from \"./utils/renderFunctions\";\n\nconst PayoutsDashboard = ({ payoutsPageRoute, isPlatformEnabled }) => {\n const [_, startTransition] = useTransition();\n const { t } = useTranslation();\n\n const [showExportModal, setShowExportModal] = useState(false);\n const {\n isFilterButtonVisible,\n isFilterPaneOpen,\n pageProperties,\n filters,\n searchKeywordProps,\n tab,\n sortProperties,\n columnData,\n dataSize,\n setDataSize,\n setIsFilterButtonVisible,\n setIsFilterPaneOpen,\n setPageProperties,\n setFilters,\n handleTabChange,\n setSortProperties,\n } = useFiltersAndPagination(payoutsPageRoute);\n\n const isTabsVisible = isFilterButtonVisible || tab !== \"all\";\n\n const handleFiltersChange = filters => {\n startTransition(() => {\n setFilters(filters);\n });\n };\n\n return (\n <>\n <Header\n title={t(\"neetoPayments.title.payouts\")}\n searchProps={\n isFilterButtonVisible && {\n placeholder: t(\"neetoPayments.common.search\"),\n className: \"w-80\",\n }\n }\n />\n {isTabsVisible && (\n <Tabs value={tab} onValueChange={handleTabChange}>\n <Tabs.List>\n {TABS.map(item => (\n <Tabs.Item key={item} value={item}>\n {t(`neetoPayments.common.${item}`)}\n </Tabs.Item>\n ))}\n </Tabs.List>\n </Tabs>\n )}\n <SubHeader\n className=\"my-4\"\n leftActionBlock={\n dataSize > 0 && (\n <Typography className=\"me-2 font-semibold\" variant=\"body1\">\n {tab === TAB.all\n ? t(\"neetoPayments.countOf.payout\", { count: dataSize })\n : t(\"neetoPayments.countOf.payoutWithStatus\", {\n count: dataSize,\n status: processTab(tab),\n })}\n </Typography>\n )\n }\n rightActionBlock={\n isFilterButtonVisible && (\n <SubHeader.RightBlock\n columnsButtonProps={{\n columnData,\n fixedColumns: DASHBOARD_MANDATORY_COLUMNS,\n tableKey: TABLE_KEYS.PAYOUTS_TABLE,\n }}\n downloadButtonProps={{\n onClick: () => setShowExportModal(true),\n }}\n filterProps={{\n columns: FILTER_COLUMNS,\n isOpen: isFilterPaneOpen,\n keyword: searchKeywordProps,\n setIsOpen: setIsFilterPaneOpen,\n onChange: handleFiltersChange,\n }}\n />\n )\n }\n />\n <FiltersBar\n columns={FILTER_COLUMNS}\n keyword={searchKeywordProps}\n setIsPaneOpen={setIsFilterPaneOpen}\n onChange={handleFiltersChange}\n />\n <List\n {...{\n columnData,\n filters,\n isPlatformEnabled,\n pageProperties,\n setDataSize,\n setIsFilterButtonVisible,\n setPageProperties,\n setSortProperties,\n sortProperties,\n tab,\n }}\n />\n <ExportModal\n {...{\n filters,\n setShowExportModal,\n showExportModal,\n sortProperties,\n tab,\n }}\n />\n </>\n );\n};\n\nexport default withTitle(\n withReactQuery(PayoutsDashboard),\n t(\"neetoPayments.title.payouts\")\n);\n"],"names":["TAB","all","paid","inTransit","failed","canceled","pending","TABS","Object","values","SEARCH_PROPS","key","node","model","DASHBOARD_MANDATORY_COLUMNS","FILTER_COLUMNS","label","t","type","showRuleSelector","DEFAULT_SORT_PROPERTIES","sortBy","orderBy","ExportModal","showExportModal","setShowExportModal","tab","filters","sortProperties","useTranslation","downloadUrl","setDownloadUrl","useState","isGenerating","setIsGenerating","mutate","exportCsv","isPending","useExportData","isFileLoading","token","useMemo","uuidV4","receivedCallback","data","download_url","handleGenerateClick","payload","kind","onSuccess","useEffect","channel","exportChannel","disconnected","undefined","onClose","_jsxs","Dialog","isOpen","children","_jsx","Header","Title","Body","Typography","variant","Footer","className","Button","href","icon","Download","onClick","_Fragment","disabled","loading","COLUMNS","header","id","accessorKey","size","enableHiding","cell","row","renderStatus","getValue","original","enableSorting","renderDate","IDENTIFIER_COLUMN","processTab","status","camelToSnakeCase","split","join","renderPayoutIdentifier","curry","route","identifier","CopyButtonWrapper","content","to","buildUrl","useFiltersAndPagination","payoutsPageRoute","history","useHistory","isFilterButtonVisible","setIsFilterButtonVisible","isFilterPaneOpen","setIsFilterPaneOpen","pageProperties","setPageProperties","buildDefaultPageProperties","setSortProperties","useQueryParams","searchTerm","getQueryParams","searchKeywordProps","value","trim","setFilters","buildFiltersFromURL","dataSize","setDataSize","identifierColumn","columns","insert","columnData","removeBy","handleTabChange","queryParams","toCamelCase","newParams","page","page_size","pageSize","push","window","location","pathname","mergeLeft","useFetchData","isPlatformEnabled","snakeToCamelCase","connected","useFetchStripePayouts","enabled","platform","useFetchStripePlatformPayouts","payouts","views","isDataLoading","isLoading","isDataFetching","isFetching","List","isTableConfigurationLoading","customizedColumns","hideColumn","useTableConfigurations","TABLE_KEYS","PAYOUTS_TABLE","buildPayload","isPresent","handleTablePagination","assoc","DEFAULT_PAGE_INDEX","DEFAULT_PAGE_SIZE","Spinner","Empty","title","TableWrapper","hasPagination","DataTable","allowRowClick","currentPage","buildRowData","enableURLPagination","enableURLSort","totalCount","onColumnHide","onPageChange","onSort","sort","field","order","PayoutsDashboard","_","startTransition","useTransition","isTabsVisible","handleFiltersChange","searchProps","placeholder","Tabs","onValueChange","map","item","Item","SubHeader","leftActionBlock","count","rightActionBlock","RightBlock","columnsButtonProps","fixedColumns","tableKey","downloadButtonProps","filterProps","keyword","setIsOpen","onChange","FiltersBar","setIsPaneOpen","withTitle","withReactQuery"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEO,MAAMA,GAAG,GAAG;AACjBC,EAAAA,GAAG,EAAE,KAAK;AACVC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,SAAS,EAAE,WAAW;AACtBC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,OAAO,EAAE;AACX,CAAC;AAEM,MAAMC,IAAI,GAAGC,MAAM,CAACC,MAAM,CAACT,GAAG,CAAC;AAE/B,MAAMU,YAAY,GAAG;AAC1BC,EAAAA,GAAG,EAAE,SAAS;AACdC,EAAAA,IAAI,EAAE,mCAAmC;AACzCC,EAAAA,KAAK,EAAE;AACT,CAAC;AAEM,MAAMC,2BAA2B,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC;AAElE,MAAMC,cAAc,GAAG,CAC5B;AACEJ,EAAAA,GAAG,EAAE,YAAY;AACjBK,EAAAA,KAAK,EAAEC,CAAC,CAAC,gCAAgC,CAAC;AAC1CL,EAAAA,IAAI,EAAE,YAAY;AAClBM,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,gBAAgB,EAAE;AACpB,CAAC,EACD;AACER,EAAAA,GAAG,EAAE,cAAc;AACnBK,EAAAA,KAAK,EAAEC,CAAC,CAAC,kCAAkC,CAAC;AAC5CL,EAAAA,IAAI,EAAE,cAAc;AACpBM,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,gBAAgB,EAAE;AACpB,CAAC,CACF;AAEM,MAAMC,uBAAuB,GAAG;AACrCC,EAAAA,MAAM,EAAE,YAAY;AACpBC,EAAAA,OAAO,EAAE;AACX,CAAC;;AC/BD,MAAMC,WAAW,GAAGA,CAAC;EACnBC,eAAe;EACfC,kBAAkB;EAClBC,GAAG;EACHC,OAAO;AACPC,EAAAA,cAAc,GAAG;AACnB,CAAC,KAAK;EACJ,MAAM;AAAEX,IAAAA;GAAG,GAAGY,cAAc,EAAE;EAC9B,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAGC,QAAQ,CAAC,EAAE,CAAC;EAClD,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAGF,QAAQ,CAAC,KAAK,CAAC;EAEvD,MAAM;AAAEG,IAAAA,MAAM,EAAEC,SAAS;AAAEC,IAAAA;GAAW,GAAGC,aAAa,EAAE;AACxD,EAAA,MAAMC,aAAa,GAAGF,SAAS,IAAIJ,YAAY;AAE/C,EAAA,MAAMO,KAAK,GAAGC,OAAO,CAAC,MAAM,CAAA,cAAA,EAAiBC,MAAM,EAAE,CAAA,CAAE,EAAE,EAAE,CAAC;EAE5D,MAAMC,gBAAgB,GAAGC,IAAI,IAAI;AAC/B,IAAA,IAAI,CAACA,IAAI,CAACC,YAAY,EAAE;AACxBd,IAAAA,cAAc,CAACa,IAAI,CAACC,YAAY,CAAC;IACjCX,eAAe,CAAC,KAAK,CAAC;EACxB,CAAC;EAED,MAAMY,mBAAmB,GAAGA,MAAM;AAChC,IAAA,MAAMC,OAAO,GAAG;AACdC,MAAAA,IAAI,EAAE,QAAQ;MACdR,KAAK;MACLb,OAAO;MACPD,GAAG;MACH,GAAGE;KACJ;IAEDQ,SAAS,CAACW,OAAO,EAAE;MACjBE,SAAS,EAAEA,MAAM;QACflB,cAAc,CAAC,EAAE,CAAC;QAClBG,eAAe,CAAC,IAAI,CAAC;AACvB,MAAA;AACF,KAAC,CAAC;EACJ,CAAC;AAEDgB,EAAAA,SAAS,CAAC,MAAM;AACd,IAAA,IAAI1B,eAAe,EAAE;AACnB,MAAA,MAAM2B,OAAO,GAAGC,aAAa,CAACZ,KAAK,EAAEG,gBAAgB,CAAC;MACtDZ,cAAc,CAAC,EAAE,CAAC;MAClBG,eAAe,CAAC,KAAK,CAAC;AAEtB,MAAA,OAAO,MAAM;QACXiB,OAAO,CAACE,YAAY,EAAE;MACxB,CAAC;AACH,IAAA;AAEA,IAAA,OAAOC,SAAS;AAClB,EAAA,CAAC,EAAE,CAAC9B,eAAe,EAAEgB,KAAK,CAAC,CAAC;AAE5B,EAAA,MAAMe,OAAO,GAAGA,MAAM9B,kBAAkB,CAAC,KAAK,CAAC;EAE/C,oBACE+B,IAAA,CAACC,MAAM,EAAA;IAAOF,OAAO;AAAIG,IAAAA,MAAM,EAAElC,eAAgB;AAAAmC,IAAAA,QAAA,EAAA,cAC/CC,GAAA,CAACH,MAAM,CAACI,MAAM,EAAA;AAAAF,MAAAA,QAAA,eACZC,GAAA,CAACH,MAAM,CAACK,KAAK,EAAA;QAAAH,QAAA,EAAE1C,CAAC,CAAC,mCAAmC;OAAgB;AAAC,KACxD,CAAC,eAChB2C,GAAA,CAACH,MAAM,CAACM,IAAI,EAAA;AAAAJ,MAAAA,QAAA,EACTpB,aAAa,gBACZqB,GAAA,CAACI,UAAU,EAAA;AAACC,QAAAA,OAAO,EAAC,OAAO;QAAAN,QAAA,EACxB1C,CAAC,CAAC,iCAAiC;AAAC,OAC3B,CAAC,gBAEb2C,GAAA,CAACI,UAAU,EAAA;AAACC,QAAAA,OAAO,EAAC,OAAO;QAAAN,QAAA,EACxB7B,WAAW,GACRb,CAAC,CAAC,gCAAgC,CAAC,GACnCA,CAAC,CAAC,sCAAsC;OAClC;AACb,KACU,CAAC,eACd2C,GAAA,CAACH,MAAM,CAACS,MAAM,EAAA;AAACC,MAAAA,SAAS,EAAC,WAAW;AAAAR,MAAAA,QAAA,EACjC7B,WAAW,gBACV8B,GAAA,CAACQ,MAAM,EAAA;AACL,QAAA,aAAA,EAAY,gCAAgC;AAC5CC,QAAAA,IAAI,EAAEvC,WAAY;AAClBwC,QAAAA,IAAI,EAAEC,QAAS;AACfvD,QAAAA,KAAK,EAAEC,CAAC,CAAC,+BAA+B,CAAE;AAC1CuD,QAAAA,OAAO,EAAEjB;AAAQ,OAClB,CAAC,gBAEFC,IAAA,CAAAiB,QAAA,EAAA;QAAAd,QAAA,EAAA,cACEC,GAAA,CAACQ,MAAM,EAAA;AACL,UAAA,aAAA,EAAY,eAAe;AAC3BM,UAAAA,QAAQ,EAAEnC,aAAc;AACxBvB,UAAAA,KAAK,EAAEC,CAAC,CAAC,6BAA6B,CAAE;AACxCgD,UAAAA,OAAO,EAAC,SAAS;AACjBO,UAAAA,OAAO,EAAEjB;AAAQ,SAClB,CAAC,eACFK,GAAA,CAACQ,MAAM,EAAA;AACL,UAAA,aAAA,EAAY,8BAA8B;AAC1CM,UAAAA,QAAQ,EAAEnC,aAAc;AACxBvB,UAAAA,KAAK,EAAEC,CAAC,CAAC,6BAA6B,CAAE;AACxC0D,UAAAA,OAAO,EAAEpC,aAAc;AACvBiC,UAAAA,OAAO,EAAE1B;AAAoB,SAC9B,CAAC;OACF;AACH,KACY,CAAC;AAAA,GACV,CAAC;AAEb,CAAC;;AC7GM,MAAM8B,OAAO,GAAG,CACrB;AACEC,EAAAA,MAAM,EAAE5D,CAAC,CAAC,yBAAyB,CAAC;AACpC6D,EAAAA,EAAE,EAAE,IAAI;AACRC,EAAAA,WAAW,EAAE,IAAI;AACjBC,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,YAAY,EAAE;AAChB,CAAC,EACD;AACEJ,EAAAA,MAAM,EAAE5D,CAAC,CAAC,6BAA6B,CAAC;AACxC6D,EAAAA,EAAE,EAAE,QAAQ;AACZC,EAAAA,WAAW,EAAE,QAAQ;AACrBC,EAAAA,IAAI,EAAE,GAAG;AACTE,EAAAA,IAAI,EAAEA,CAAC;AAAEC,IAAAA;AAAI,GAAC,KACZC,YAAY,CAAC,QAAQ,CAAC,CAACD,GAAG,CAACE,QAAQ,CAAC,QAAQ,CAAC,EAAEF,GAAG,CAACG,QAAQ,CAAC;AAC9DC,EAAAA,aAAa,EAAE,IAAI;AACnBN,EAAAA,YAAY,EAAE;AAChB,CAAC,EACD;AACEJ,EAAAA,MAAM,EAAE5D,CAAC,CAAC,6BAA6B,CAAC;AACxC6D,EAAAA,EAAE,EAAE,QAAQ;AACZC,EAAAA,WAAW,EAAE,QAAQ;AACrBC,EAAAA,IAAI,EAAE,GAAG;AACTO,EAAAA,aAAa,EAAE;AACjB,CAAC,EACD;AACEV,EAAAA,MAAM,EAAE5D,CAAC,CAAC,gCAAgC,CAAC;AAC3C6D,EAAAA,EAAE,EAAE,WAAW;AACfC,EAAAA,WAAW,EAAE,WAAW;AACxBC,EAAAA,IAAI,EAAE,GAAG;AACTE,EAAAA,IAAI,EAAEA,CAAC;AAAEC,IAAAA;GAAK,KAAKK,UAAU,CAACL,GAAG,CAACE,QAAQ,CAAC,WAAW,CAAC,CAAC;AACxDE,EAAAA,aAAa,EAAE;AACjB,CAAC,EACD;AACEV,EAAAA,MAAM,EAAE5D,CAAC,CAAC,kCAAkC,CAAC;AAC7C6D,EAAAA,EAAE,EAAE,aAAa;AACjBC,EAAAA,WAAW,EAAE,aAAa;AAC1BC,EAAAA,IAAI,EAAE,GAAG;AACTE,EAAAA,IAAI,EAAEA,CAAC;AAAEC,IAAAA;GAAK,KAAKK,UAAU,CAACL,GAAG,CAACE,QAAQ,CAAC,aAAa,CAAC,CAAC;AAC1DE,EAAAA,aAAa,EAAE;AACjB,CAAC,EACD;AACEV,EAAAA,MAAM,EAAE5D,CAAC,CAAC,4CAA4C,CAAC;AACvD6D,EAAAA,EAAE,EAAE,uBAAuB;AAC3BC,EAAAA,WAAW,EAAE,uBAAuB;AACpCC,EAAAA,IAAI,EAAE;AACR,CAAC,CACF;AAEM,MAAMS,iBAAiB,GAAG;AAC/BZ,EAAAA,MAAM,EAAE5D,CAAC,CAAC,iCAAiC,CAAC;AAC5C6D,EAAAA,EAAE,EAAE,YAAY;AAChBC,EAAAA,WAAW,EAAE,YAAY;AACzBC,EAAAA,IAAI,EAAE,GAAG;AACTC,EAAAA,YAAY,EAAE;AAChB,CAAC;;ACpDM,MAAMS,UAAU,GAAGC,MAAM,IAC9BC,gBAAgB,CAACD,MAAM,CAAC,CAACE,KAAK,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC;AAExC,MAAMC,sBAAsB,GAAGC,KAAK,CACzC,CAACC,KAAK,EAAE;AAAEC,EAAAA,UAAU,GAAG,EAAE;AAAEpB,EAAAA,EAAE,GAAG;AAAG,CAAC,kBAClClB,GAAA,CAACuC,iBAAiB,EAAA;AAACC,EAAAA,OAAO,EAAEF,UAAW;EAAAvC,QAAA,eACrCC,GAAA,CAACQ,MAAM,EAAA;AACLpD,IAAAA,KAAK,EAAEkF,UAAW;AAClBlB,IAAAA,IAAI,EAAC,IAAI;AACTqB,IAAAA,EAAE,EAAEC,QAAQ,CAACL,KAAK,EAAE;AAAEnB,MAAAA;AAAG,KAAC,CAAE;AAC5Bb,IAAAA,OAAO,EAAC;GACT;AAAC,CACe,CAEvB,CAAC;;ACLM,MAAMsC,uBAAuB,GAAGC,gBAAgB,IAAI;AACzD,EAAA,MAAMC,OAAO,GAAGC,UAAU,EAAE;EAC5B,MAAM,CAACC,qBAAqB,EAAEC,wBAAwB,CAAC,GAAG5E,QAAQ,CAAC,KAAK,CAAC;EACzE,MAAM,CAAC6E,gBAAgB,EAAEC,mBAAmB,CAAC,GAAG9E,QAAQ,CAAC,KAAK,CAAC;AAC/D,EAAA,MAAM,CAAC+E,cAAc,EAAEC,iBAAiB,CAAC,GAAGhF,QAAQ,CAClDiF,0BAA0B,CAAC1G,IAAI,CACjC,CAAC;EACD,MAAM,CAACqB,cAAc,EAAEsF,iBAAiB,CAAC,GAAGlF,QAAQ,CAACZ,yBAAuB,CAAC;EAC7E,MAAM;IAAEM,GAAG,GAAG1B,GAAG,CAACC;GAAK,GAAGkH,cAAc,EAAE;EAE1C,MAAM;AAAEC,IAAAA,UAAU,GAAG;GAAI,GAAGC,cAAc,EAAE;AAC5C,EAAA,MAAMC,kBAAkB,GAAG;AACzB,IAAA,GAAG5G,YAAY;AACfC,IAAAA,GAAG,EAAE,aAAa;AAClB4G,IAAAA,KAAK,EAAEH,UAAU,CAACI,IAAI;GACvB;AAED,EAAA,MAAM,CAAC7F,OAAO,EAAE8F,UAAU,CAAC,GAAGzF,QAAQ,CACpC0F,mBAAmB,CAAC,CAAC,GAAG3G,cAAc,EAAEuG,kBAAkB,CAAC,CAC7D,CAAC;EACD,MAAM,CAACK,QAAQ,EAAEC,WAAW,CAAC,GAAG5F,QAAQ,CAAC,IAAI,CAAC;AAE9C,EAAA,MAAM6F,gBAAgB,GAAG;AACvB,IAAA,GAAGpC,iBAAiB;AACpBP,IAAAA,IAAI,EAAEA,CAAC;AAAEC,MAAAA;KAAK,KAAKY,sBAAsB,CAACS,gBAAgB,CAAC,CAACrB,GAAG,CAACG,QAAQ;GACzE;EAED,MAAMwC,OAAO,GAAGC,MAAM,CAAC,CAAC,EAAEF,gBAAgB,EAAEjD,OAAO,CAAC;EAEpD,MAAMoD,UAAU,GACdtG,GAAG,KAAK1B,GAAG,CAACC,GAAG,GAAGgI,QAAQ,CAAC;AAAEnD,IAAAA,EAAE,EAAE;AAAS,GAAC,EAAEgD,OAAO,CAAC,GAAGA,OAAO;EAEjE,MAAMI,eAAe,GAAGxG,GAAG,IAAI;IAC7BkG,WAAW,CAAC,IAAI,CAAC;IACjB,MAAMO,WAAW,GAAGd,cAAc,CAAC;AAAEe,MAAAA,WAAW,EAAE;AAAM,KAAC,CAAC;AAC1D,IAAA,MAAMC,SAAS,GAAG;MAChB3G,GAAG;AACH4G,MAAAA,IAAI,EAAEvB,cAAc,CAACrF,GAAG,CAAC,EAAE4G,IAAI;AAC/BC,MAAAA,SAAS,EAAExB,cAAc,CAACrF,GAAG,CAAC,EAAE8G;KACjC;AAED/B,IAAAA,OAAO,CAACgC,IAAI,CACVnC,QAAQ,CAACoC,MAAM,CAACC,QAAQ,CAACC,QAAQ,EAAEC,SAAS,CAACR,SAAS,EAAEF,WAAW,CAAC,CACtE,CAAC;EACH,CAAC;EAED,OAAO;IACLxB,qBAAqB;IACrBE,gBAAgB;IAChBE,cAAc;IACdpF,OAAO;IACP2F,kBAAkB;IAClB5F,GAAG;IACHE,cAAc;IACdoG,UAAU;IACVL,QAAQ;IACRC,WAAW;IACXhB,wBAAwB;IACxBE,mBAAmB;IACnBE,iBAAiB;IACjBS,UAAU;IACVS,eAAe;AACfhB,IAAAA;GACD;AACH,CAAC;;AC3EM,MAAM4B,YAAY,GAAGA,CAAC;EAAEC,iBAAiB;AAAEhG,EAAAA;AAAQ,CAAC,KAAK;EAC9D,MAAMH,IAAI,GAAG,EAAE;AACf,EAAA,MAAMI,IAAI,GAAG+F,iBAAiB,GAAG,UAAU,GAAG,WAAW;EACzD,MAAMrH,GAAG,GAAGsH,gBAAgB,CAACjG,OAAO,EAAErB,GAAG,IAAI,EAAE,CAAC;AAEhDkB,EAAAA,IAAI,CAACqG,SAAS,GAAGC,qBAAqB,CAACnG,OAAO,EAAE;AAC9CoG,IAAAA,OAAO,EAAE,CAACJ;AACZ,GAAC,CAAC;AAEFnG,EAAAA,IAAI,CAACwG,QAAQ,GAAGC,6BAA6B,CAACtG,OAAO,EAAE;AACrDoG,IAAAA,OAAO,EAAEJ;AACX,GAAC,CAAC;EAEF,OAAO;IACLnG,IAAI,EAAEA,IAAI,CAACI,IAAI,CAAC,EAAEJ,IAAI,EAAE0G,OAAO;IAC/B3B,QAAQ,EAAE/E,IAAI,CAACI,IAAI,CAAC,EAAEJ,IAAI,EAAE2G,KAAK,GAAG7H,GAAG,CAAC;AACxC8H,IAAAA,aAAa,EAAE5G,IAAI,CAACI,IAAI,CAAC,EAAEyG,SAAS;AACpCC,IAAAA,cAAc,EAAE9G,IAAI,CAACI,IAAI,CAAC,EAAE2G;GAC7B;AACH,CAAC;;ACND,MAAMC,IAAI,GAAGA,CAAC;EACZ5B,UAAU;EACVrG,OAAO;EACPoF,cAAc;EACda,WAAW;EACXhB,wBAAwB;EACxBI,iBAAiB;EACjBE,iBAAiB;EACjBtF,cAAc;EACdF,GAAG;AACHqH,EAAAA;AACF,CAAC,KAAK;AACJ,EAAA,MAAMtC,OAAO,GAAGC,UAAU,EAAE;EAC5B,MAAM;AAAEzF,IAAAA;GAAG,GAAGY,cAAc,EAAE;EAE9B,MAAM;IAAEgI,2BAA2B;IAAEC,iBAAiB;AAAEC,IAAAA;GAAY,GAClEC,sBAAsB,CAACC,UAAU,CAACC,aAAa,EAAElC,UAAU,CAAC;EAE9D,MAAM;AACJpF,IAAAA,IAAI,EAAE0G,OAAO;IACbE,aAAa;IACb7B,QAAQ;AACR+B,IAAAA;GACD,GAAGZ,YAAY,CAAC;IACf/F,OAAO,EAAEoH,YAAY,CAAC;MAAExI,OAAO;MAAEoF,cAAc;MAAEnF,cAAc;AAAEF,MAAAA;AAAI,KAAC,CAAC;AACvEqH,IAAAA;AACF,GAAC,CAAC;AAEF7F,EAAAA,SAAS,CAAC,MAAM;IACd0D,wBAAwB,CAACwD,SAAS,CAACd,OAAO,CAAC,IAAIc,SAAS,CAACzI,OAAO,CAAC,CAAC;IAClEiG,WAAW,CAACD,QAAQ,CAAC;AACvB,EAAA,CAAC,EAAE,CAAC2B,OAAO,CAAC,CAAC;AAEb,EAAA,MAAMe,qBAAqB,GAAGA,CAAC/B,IAAI,EAAEE,QAAQ,KAAK;IAChD,MAAML,WAAW,GAAGd,cAAc,CAAC;AAAEe,MAAAA,WAAW,EAAE;AAAM,KAAC,CAAC;AAC1D3B,IAAAA,OAAO,CAACgC,IAAI,CACVnC,QAAQ,CACNoC,MAAM,CAACC,QAAQ,CAACC,QAAQ,EACxBC,SAAS,CAAC;MAAEP,IAAI;AAAEC,MAAAA,SAAS,EAAEC;AAAS,KAAC,EAAEL,WAAW,CACtD,CACF,CAAC;AACDnB,IAAAA,iBAAiB,CAACsD,KAAK,CAAC5I,GAAG,EAAE;MAAE4G,IAAI;AAAEE,MAAAA;AAAS,KAAC,CAAC,CAAC;EACnD,CAAC;AAEDtF,EAAAA,SAAS,CAAC,MAAM;AACdmH,IAAAA,qBAAqB,CAACE,kBAAkB,EAAEC,iBAAiB,CAAC;IAC5DtD,iBAAiB,CAAC9F,uBAAuB,CAAC;AAC5C,EAAA,CAAC,EAAE,CAACO,OAAO,EAAED,GAAG,CAAC,CAAC;AAElB,EAAA,IAAI8H,aAAa,EAAE;AACjB,IAAA,oBACE5F,GAAA,CAAA,KAAA,EAAA;AAAKO,MAAAA,SAAS,EAAC,gDAAgD;AAAAR,MAAAA,QAAA,eAC7DC,GAAA,CAAC6G,OAAO,EAAA,EAAE;AAAC,KACR,CAAC;AAEV,EAAA;EAEA,IAAI9C,QAAQ,IAAI,CAAC,IAAI,CAACyC,SAAS,CAACd,OAAO,CAAC,EAAE;AACxC,IAAA,oBACE1F,GAAA,CAAA,KAAA,EAAA;AAAKO,MAAAA,SAAS,EAAC,gDAAgD;MAAAR,QAAA,eAC7DC,GAAA,CAAC8G,KAAK,EAAA;AAACC,QAAAA,KAAK,EAAE1J,CAAC,CAAC,CAAA,iCAAA,EAAoCS,GAAG,CAAA,CAAE;OAAI;AAAC,KAC3D,CAAC;AAEV,EAAA;EAEA,oBACEkC,GAAA,CAACgH,YAAY,EAAA;IAACC,aAAa,EAAElD,QAAQ,GAAGZ,cAAc,CAACrF,GAAG,CAAC,EAAE8G,QAAS;IAAA7E,QAAA,eACpEC,GAAA,CAACkH,SAAS,EAAA;AACRC,MAAAA,aAAa,EAAE,KAAM;AACrBjD,MAAAA,OAAO,EAAEgC,iBAAkB;AAC3BkB,MAAAA,WAAW,EAAEjE,cAAc,CAACrF,GAAG,CAAC,EAAE4G,IAAK;MACvC1F,IAAI,EAAEqI,YAAY,CAAC;AAAErI,QAAAA,IAAI,EAAE0G,OAAO;QAAEvC,cAAc;AAAErF,QAAAA;AAAI,OAAC,CAAE;AAC3DwJ,MAAAA,mBAAmB,EAAE,KAAM;AAC3BC,MAAAA,aAAa,EAAE,KAAM;MACrBxG,OAAO,EAAE+E,cAAc,IAAIG,2BAA4B;AACvDuB,MAAAA,UAAU,EAAEzD,QAAS;AACrB0D,MAAAA,YAAY,EAAEvG,EAAE,IAAIiF,UAAU,CAACjF,EAAE,CAAE;AACnCwG,MAAAA,YAAY,EAAEhD,IAAI,IAChB+B,qBAAqB,CAAC/B,IAAI,EAAEvB,cAAc,CAACrF,GAAG,CAAC,EAAE8G,QAAQ,CAC1D;AACD+C,MAAAA,MAAM,EAAEC,IAAI,IACVA,IAAI,GACAtE,iBAAiB,CAAC;AAChB7F,QAAAA,MAAM,EAAEuE,gBAAgB,CAAC4F,IAAI,CAACC,KAAK,CAAC;QACpCnK,OAAO,EAAEkK,IAAI,CAACE,KAAK,KAAK,QAAQ,GAAG,KAAK,GAAG;AAC7C,OAAC,CAAC,GACFxE,iBAAiB,CAAC9F,uBAAuB;KAEhD;AAAC,GACU,CAAC;AAEnB,CAAC;;ACrFD,MAAMuK,gBAAgB,GAAGA,CAAC;EAAEnF,gBAAgB;AAAEuC,EAAAA;AAAkB,CAAC,KAAK;EACpE,MAAM,CAAC6C,CAAC,EAAEC,eAAe,CAAC,GAAGC,aAAa,EAAE;EAC5C,MAAM;AAAE7K,IAAAA;GAAG,GAAGY,cAAc,EAAE;EAE9B,MAAM,CAACL,eAAe,EAAEC,kBAAkB,CAAC,GAAGO,QAAQ,CAAC,KAAK,CAAC;EAC7D,MAAM;IACJ2E,qBAAqB;IACrBE,gBAAgB;IAChBE,cAAc;IACdpF,OAAO;IACP2F,kBAAkB;IAClB5F,GAAG;IACHE,cAAc;IACdoG,UAAU;IACVL,QAAQ;IACRC,WAAW;IACXhB,wBAAwB;IACxBE,mBAAmB;IACnBE,iBAAiB;IACjBS,UAAU;IACVS,eAAe;AACfhB,IAAAA;AACF,GAAC,GAAGX,uBAAuB,CAACC,gBAAgB,CAAC;AAE7C,EAAA,MAAMuF,aAAa,GAAGpF,qBAAqB,IAAIjF,GAAG,KAAK,KAAK;EAE5D,MAAMsK,mBAAmB,GAAGrK,OAAO,IAAI;AACrCkK,IAAAA,eAAe,CAAC,MAAM;MACpBpE,UAAU,CAAC9F,OAAO,CAAC;AACrB,IAAA,CAAC,CAAC;EACJ,CAAC;EAED,oBACE6B,IAAA,CAAAiB,QAAA,EAAA;IAAAd,QAAA,EAAA,cACEC,GAAA,CAACC,MAAM,EAAA;AACL8G,MAAAA,KAAK,EAAE1J,CAAC,CAAC,6BAA6B,CAAE;MACxCgL,WAAW,EACTtF,qBAAqB,IAAI;AACvBuF,QAAAA,WAAW,EAAEjL,CAAC,CAAC,6BAA6B,CAAC;AAC7CkD,QAAAA,SAAS,EAAE;AACb;AACD,KACF,CAAC,EACD4H,aAAa,iBACZnI,GAAA,CAACuI,IAAI,EAAA;AAAC5E,MAAAA,KAAK,EAAE7F,GAAI;AAAC0K,MAAAA,aAAa,EAAElE,eAAgB;AAAAvE,MAAAA,QAAA,eAC/CC,GAAA,CAACuI,IAAI,CAACvC,IAAI,EAAA;QAAAjG,QAAA,EACPpD,IAAI,CAAC8L,GAAG,CAACC,IAAI,iBACZ1I,GAAA,CAACuI,IAAI,CAACI,IAAI,EAAA;AAAYhF,UAAAA,KAAK,EAAE+E,IAAK;AAAA3I,UAAAA,QAAA,EAC/B1C,CAAC,CAAC,CAAA,qBAAA,EAAwBqL,IAAI,CAAA,CAAE;AAAC,SAAA,EADpBA,IAEL,CACZ;OACQ;AAAC,KACR,CACP,eACD1I,GAAA,CAAC4I,SAAS,EAAA;AACRrI,MAAAA,SAAS,EAAC,MAAM;AAChBsI,MAAAA,eAAe,EACb9E,QAAQ,GAAG,CAAC,iBACV/D,GAAA,CAACI,UAAU,EAAA;AAACG,QAAAA,SAAS,EAAC,oBAAoB;AAACF,QAAAA,OAAO,EAAC,OAAO;QAAAN,QAAA,EACvDjC,GAAG,KAAK1B,GAAG,CAACC,GAAG,GACZgB,CAAC,CAAC,8BAA8B,EAAE;AAAEyL,UAAAA,KAAK,EAAE/E;AAAS,SAAC,CAAC,GACtD1G,CAAC,CAAC,wCAAwC,EAAE;AAC1CyL,UAAAA,KAAK,EAAE/E,QAAQ;UACfhC,MAAM,EAAED,UAAU,CAAChE,GAAG;SACvB;AAAC,OACI,CAEf;AACDiL,MAAAA,gBAAgB,EACdhG,qBAAqB,iBACnB/C,GAAA,CAAC4I,SAAS,CAACI,UAAU,EAAA;AACnBC,QAAAA,kBAAkB,EAAE;UAClB7E,UAAU;AACV8E,UAAAA,YAAY,EAAEhM,2BAA2B;UACzCiM,QAAQ,EAAE9C,UAAU,CAACC;SACrB;AACF8C,QAAAA,mBAAmB,EAAE;AACnBxI,UAAAA,OAAO,EAAEA,MAAM/C,kBAAkB,CAAC,IAAI;SACtC;AACFwL,QAAAA,WAAW,EAAE;AACXnF,UAAAA,OAAO,EAAE/G,cAAc;AACvB2C,UAAAA,MAAM,EAAEmD,gBAAgB;AACxBqG,UAAAA,OAAO,EAAE5F,kBAAkB;AAC3B6F,UAAAA,SAAS,EAAErG,mBAAmB;AAC9BsG,UAAAA,QAAQ,EAAEpB;AACZ;OACD;AAEJ,KACF,CAAC,eACFpI,GAAA,CAACyJ,GAAU,EAAA;AACTvF,MAAAA,OAAO,EAAE/G,cAAe;AACxBmM,MAAAA,OAAO,EAAE5F,kBAAmB;AAC5BgG,MAAAA,aAAa,EAAExG,mBAAoB;AACnCsG,MAAAA,QAAQ,EAAEpB;AAAoB,KAC/B,CAAC,eACFpI,GAAA,CAACgG,IAAI,EAAA;MAED5B,UAAU;MACVrG,OAAO;MACPoH,iBAAiB;MACjBhC,cAAc;MACda,WAAW;MACXhB,wBAAwB;MACxBI,iBAAiB;MACjBE,iBAAiB;MACjBtF,cAAc;AACdF,MAAAA;AAAG,KAEN,CAAC,eACFkC,GAAA,CAACrC,WAAW,EAAA;MAERI,OAAO;MACPF,kBAAkB;MAClBD,eAAe;MACfI,cAAc;AACdF,MAAAA;AAAG,KAEN,CAAC;AAAA,GACF,CAAC;AAEP,CAAC;AAED,YAAe6L,SAAS,CACtBC,cAAc,CAAC7B,gBAAgB,CAAC,EAChC1K,CAAC,CAAC,6BAA6B,CACjC,CAAC;;;;"}