{"version":3,"file":"bbb7ee932518084d6bcd9770945730ed1447107f-2f2d27ea351af078f1c7.js","mappings":"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","sources":["webpack://payment-flow/./src/utils/api.ts"],"sourcesContent":["const apiUrl =\n process.env.GATSBY_API_URL || `https://business.api.staging.fena.co`;\n\nconst consumerApiUrl =\n process.env.GATSBY_CONSUMER_API_URL || `https://consumer.api.fena.co`;\n\n// const apiUrl = `http://localhost:8084`;\n\nclass Api {\n private readonly apiUrl: string;\n\n private readonly consumerApiUrl: string;\n\n constructor(url, consumerUrl) {\n this.apiUrl = url;\n this.consumerApiUrl = consumerUrl;\n }\n\n public async getProviderList(\n type = `merchant`,\n excludedBanks: Array = [],\n enabled = true,\n ) {\n const res = await fetch(\n `${\n type === `merchant` ? this.apiUrl : this.consumerApiUrl\n }/providers/list?enabled=${enabled}${\n excludedBanks?.length > 0\n ? `&excluded=${JSON.stringify(excludedBanks)}`\n : ``\n }`,\n {\n method: `GET`,\n },\n );\n return res.json();\n }\n\n public async getPaymentInfo(paymentId, type = `merchant`) {\n const res = await fetch(\n `${\n type === `merchant` ? this.apiUrl : this.consumerApiUrl\n }/payment-flow/public/payment/${paymentId}`,\n {\n method: `GET`,\n },\n );\n return res.json();\n }\n\n public async getInvoiceInfo(invoiceId) {\n const res = await fetch(\n `${this.apiUrl}/payment-flow/public/invoice/${invoiceId}`,\n {\n method: `GET`,\n },\n );\n return res.json();\n }\n\n public async getPaymentRefundInfo(paymentId, type = `merchant`) {\n const res = await fetch(\n `${\n type === `merchant` ? this.apiUrl : this.consumerApiUrl\n }/payment-flow/public/refund/payment/${paymentId}`,\n {\n method: `GET`,\n },\n );\n return res.json();\n }\n\n public async getInvoiceRefundInfo(invoiceId) {\n const res = await fetch(\n `${this.apiUrl}/payment-flow/public/refund/invoice/${invoiceId}`,\n {\n method: `GET`,\n },\n );\n return res.json();\n }\n\n public async initiatePayment(id, type, provider, p2p = false) {\n console.log(`starting initiation`);\n const res = await fetch(\n `${!p2p ? this.apiUrl : this.consumerApiUrl}/payment-flow/initiate`,\n {\n method: `POST`,\n headers: {\n Accept: `application/json`,\n 'Content-Type': `application/json`,\n },\n body: JSON.stringify({\n type,\n id,\n provider,\n }),\n },\n );\n return res.json();\n }\n\n public async initiateRefund(id, type, provider) {\n console.log(`starting initiation`);\n const res = await fetch(`${this.apiUrl}/payment-flow/initiate-refund`, {\n method: `POST`,\n headers: {\n Accept: `application/json`,\n 'Content-Type': `application/json`,\n },\n body: JSON.stringify({\n type,\n id,\n provider,\n }),\n });\n return res.json();\n }\n\n public async getLastPaymentByTerminal(terminalId) {\n const res = await fetch(\n `${this.apiUrl}/payment-flow/public/terminal/${terminalId}`,\n {\n method: `GET`,\n },\n );\n return res.json();\n }\n\n public async manuallyGetStatusFromProvider(\n providerId: string,\n type = `merchant`,\n ) {\n const res = await fetch(\n `${\n type === `merchant` ? this.apiUrl : this.consumerApiUrl\n }/payment-flow/manual/${providerId}`,\n {\n method: `GET`,\n },\n );\n return res.json();\n }\n\n public async createDataAPIConnection(companyId: string, providerId: string) {\n const res = await fetch(`${this.apiUrl}/payment-flow/public/connect`, {\n method: `POST`,\n headers: {\n Accept: `application/json`,\n 'Content-Type': `application/json`,\n },\n body: JSON.stringify({\n externalId: providerId,\n userId: companyId,\n redirectUrl: `${window.location.origin}/connectionstatus/${companyId}/`,\n }),\n });\n return res.json();\n }\n\n public async getRecurringPaymentInfo(rpId: string) {\n const res = await fetch(\n `${this.apiUrl}/payment-flow/public/recurring-payment/${rpId}`,\n {\n method: `GET`,\n },\n );\n return res.json();\n }\n\n public async getRecurringPaymentByInitialPayment(initialPaymentId: string) {\n const res = await fetch(\n `${this.apiUrl}/payment-flow/public/recurring-payment/${initialPaymentId}/get-by-initial`,\n {\n method: `GET`,\n },\n );\n return res.json();\n }\n\n public async manualCheckRPstatus(customerPaymentId: string) {\n const res = await fetch(\n `${this.apiUrl}/payment-flow/public/recurring-payment/status/${customerPaymentId}`,\n {\n method: `GET`,\n },\n );\n return res.json();\n }\n\n public async getPublicCompanyData(companyId: string) {\n const res = await fetch(\n `${this.apiUrl}/payment-flow/public/${companyId}/company`,\n {\n method: `GET`,\n },\n );\n return res.json();\n }\n\n public async getBankAccountsForCompany(companyId, consentId) {\n const url = new URL(\n `${this.apiUrl}/payment-flow/public/${companyId}/bank-accounts/`,\n );\n url.searchParams.append(`field`, `consentID`);\n url.searchParams.append(`value`, consentId);\n const res = await fetch(url.toString(), {\n method: `GET`,\n });\n return res.json();\n }\n\n public async getPublicBankAccountData(bankAccountId: string) {\n const res = await fetch(\n `${this.apiUrl}/payment-flow/public/bank-account/${bankAccountId}`,\n {\n method: `GET`,\n },\n );\n\n const data = await res.json();\n return data.data;\n }\n\n async reconsentBankAccount(bankAccountId: string) {\n const url = new URL(\n `${this.apiUrl}/payment-flow/public/bank-account/${bankAccountId}/reconsent`,\n );\n const result = await fetch(url.toString(), {\n method: `POST`,\n });\n const { status } = result;\n return status;\n }\n\n async fullReconsentBankAccount(bankAccountId: string, companyId: string) {\n const url = new URL(\n `${this.apiUrl}/payment-flow/public/bank-account/${bankAccountId}/full-reconsent`,\n );\n const body = JSON.stringify({\n redirectUrl: `${window.location.origin}/reconsentstatus/${bankAccountId}/`,\n companyId,\n });\n const result = await fetch(url.toString(), {\n method: `POST`,\n headers: {\n Accept: `application/json`,\n 'Content-Type': `application/json`,\n },\n body,\n });\n\n const data = await result.json();\n return data.data;\n }\n}\n\nexport default new Api(apiUrl, consumerApiUrl);\n"],"names":["Api","url","consumerUrl","this","apiUrl","consumerApiUrl","getProviderList","type","excludedBanks","enabled","fetch","length","JSON","stringify","method","res","json","getPaymentInfo","paymentId","getInvoiceInfo","invoiceId","getPaymentRefundInfo","getInvoiceRefundInfo","initiatePayment","id","provider","p2p","console","log","headers","Accept","body","initiateRefund","getLastPaymentByTerminal","terminalId","manuallyGetStatusFromProvider","providerId","createDataAPIConnection","companyId","externalId","userId","redirectUrl","window","location","origin","getRecurringPaymentInfo","rpId","getRecurringPaymentByInitialPayment","initialPaymentId","manualCheckRPstatus","customerPaymentId","getPublicCompanyData","getBankAccountsForCompany","consentId","URL","searchParams","append","toString","getPublicBankAccountData","bankAccountId","data","reconsentBankAccount","result","status","fullReconsentBankAccount","process"],"sourceRoot":""}