UNPKG

@coinbase/cdp-sdk

Version:

SDK for interacting with the Coinbase Developer Platform Wallet API

524 lines (482 loc) 16.7 kB
/** * Generated by orval v7.6.0 🍺 * Do not edit manually. * Coinbase Developer Platform APIs * The Coinbase Developer Platform APIs - leading the world's transition onchain. * OpenAPI spec version: 2.0.0 */ import { faker } from "@faker-js/faker"; import { HttpResponse, delay, http } from "msw"; import type { EvmAccount, ExportEvmAccount200, ExportEvmAccountByName200, ListEvmAccounts200, SendEvmTransaction200, SignEvmHash200, SignEvmMessage200, SignEvmTransaction200, SignEvmTypedData200, } from "../coinbaseDeveloperPlatformAPIs.schemas.js"; export const getListEvmAccountsResponseMock = (): ListEvmAccounts200 => ({ ...{ accounts: Array.from({ length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1).map( () => ({ address: faker.helpers.fromRegExp("^0x[0-9a-fA-F]{40}$"), name: faker.helpers.arrayElement([ faker.helpers.fromRegExp("^[A-Za-z0-9][A-Za-z0-9-]{0,34}[A-Za-z0-9]$"), undefined, ]), policies: faker.helpers.arrayElement([ Array.from({ length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1).map(() => faker.helpers.fromRegExp( "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$", ), ), undefined, ]), createdAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, undefined, ]), updatedAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, undefined, ]), }), ), }, ...{ nextPageToken: faker.helpers.arrayElement([faker.string.alpha(20), undefined]) }, }); export const getCreateEvmAccountResponseMock = ( overrideResponse: Partial<EvmAccount> = {}, ): EvmAccount => ({ address: faker.helpers.fromRegExp("^0x[0-9a-fA-F]{40}$"), name: faker.helpers.arrayElement([ faker.helpers.fromRegExp("^[A-Za-z0-9][A-Za-z0-9-]{0,34}[A-Za-z0-9]$"), undefined, ]), policies: faker.helpers.arrayElement([ Array.from({ length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1).map(() => faker.helpers.fromRegExp( "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$", ), ), undefined, ]), createdAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, undefined, ]), updatedAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, undefined, ]), ...overrideResponse, }); export const getGetEvmAccountResponseMock = ( overrideResponse: Partial<EvmAccount> = {}, ): EvmAccount => ({ address: faker.helpers.fromRegExp("^0x[0-9a-fA-F]{40}$"), name: faker.helpers.arrayElement([ faker.helpers.fromRegExp("^[A-Za-z0-9][A-Za-z0-9-]{0,34}[A-Za-z0-9]$"), undefined, ]), policies: faker.helpers.arrayElement([ Array.from({ length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1).map(() => faker.helpers.fromRegExp( "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$", ), ), undefined, ]), createdAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, undefined, ]), updatedAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, undefined, ]), ...overrideResponse, }); export const getUpdateEvmAccountResponseMock = ( overrideResponse: Partial<EvmAccount> = {}, ): EvmAccount => ({ address: faker.helpers.fromRegExp("^0x[0-9a-fA-F]{40}$"), name: faker.helpers.arrayElement([ faker.helpers.fromRegExp("^[A-Za-z0-9][A-Za-z0-9-]{0,34}[A-Za-z0-9]$"), undefined, ]), policies: faker.helpers.arrayElement([ Array.from({ length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1).map(() => faker.helpers.fromRegExp( "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$", ), ), undefined, ]), createdAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, undefined, ]), updatedAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, undefined, ]), ...overrideResponse, }); export const getGetEvmAccountByNameResponseMock = ( overrideResponse: Partial<EvmAccount> = {}, ): EvmAccount => ({ address: faker.helpers.fromRegExp("^0x[0-9a-fA-F]{40}$"), name: faker.helpers.arrayElement([ faker.helpers.fromRegExp("^[A-Za-z0-9][A-Za-z0-9-]{0,34}[A-Za-z0-9]$"), undefined, ]), policies: faker.helpers.arrayElement([ Array.from({ length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1).map(() => faker.helpers.fromRegExp( "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$", ), ), undefined, ]), createdAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, undefined, ]), updatedAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, undefined, ]), ...overrideResponse, }); export const getSendEvmTransactionResponseMock = ( overrideResponse: Partial<SendEvmTransaction200> = {}, ): SendEvmTransaction200 => ({ transactionHash: faker.string.alpha(20), ...overrideResponse }); export const getSignEvmTransactionResponseMock = ( overrideResponse: Partial<SignEvmTransaction200> = {}, ): SignEvmTransaction200 => ({ signedTransaction: faker.string.alpha(20), ...overrideResponse }); export const getSignEvmHashResponseMock = ( overrideResponse: Partial<SignEvmHash200> = {}, ): SignEvmHash200 => ({ signature: faker.string.alpha(20), ...overrideResponse }); export const getSignEvmMessageResponseMock = ( overrideResponse: Partial<SignEvmMessage200> = {}, ): SignEvmMessage200 => ({ signature: faker.string.alpha(20), ...overrideResponse }); export const getSignEvmTypedDataResponseMock = ( overrideResponse: Partial<SignEvmTypedData200> = {}, ): SignEvmTypedData200 => ({ signature: faker.string.alpha(20), ...overrideResponse }); export const getImportEvmAccountResponseMock = ( overrideResponse: Partial<EvmAccount> = {}, ): EvmAccount => ({ address: faker.helpers.fromRegExp("^0x[0-9a-fA-F]{40}$"), name: faker.helpers.arrayElement([ faker.helpers.fromRegExp("^[A-Za-z0-9][A-Za-z0-9-]{0,34}[A-Za-z0-9]$"), undefined, ]), policies: faker.helpers.arrayElement([ Array.from({ length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1).map(() => faker.helpers.fromRegExp( "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$", ), ), undefined, ]), createdAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, undefined, ]), updatedAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, undefined, ]), ...overrideResponse, }); export const getExportEvmAccountResponseMock = ( overrideResponse: Partial<ExportEvmAccount200> = {}, ): ExportEvmAccount200 => ({ encryptedPrivateKey: faker.string.alpha(20), ...overrideResponse }); export const getExportEvmAccountByNameResponseMock = ( overrideResponse: Partial<ExportEvmAccountByName200> = {}, ): ExportEvmAccountByName200 => ({ encryptedPrivateKey: faker.string.alpha(20), ...overrideResponse, }); export const getListEvmAccountsMockHandler = ( overrideResponse?: | ListEvmAccounts200 | (( info: Parameters<Parameters<typeof http.get>[1]>[0], ) => Promise<ListEvmAccounts200> | ListEvmAccounts200), ) => { return http.get("*/v2/evm/accounts", async info => { await delay(0); return new HttpResponse( JSON.stringify( overrideResponse !== undefined ? typeof overrideResponse === "function" ? await overrideResponse(info) : overrideResponse : getListEvmAccountsResponseMock(), ), { status: 200, headers: { "Content-Type": "application/json" } }, ); }); }; export const getCreateEvmAccountMockHandler = ( overrideResponse?: | EvmAccount | ((info: Parameters<Parameters<typeof http.post>[1]>[0]) => Promise<EvmAccount> | EvmAccount), ) => { return http.post("*/v2/evm/accounts", async info => { await delay(0); return new HttpResponse( JSON.stringify( overrideResponse !== undefined ? typeof overrideResponse === "function" ? await overrideResponse(info) : overrideResponse : getCreateEvmAccountResponseMock(), ), { status: 201, headers: { "Content-Type": "application/json" } }, ); }); }; export const getGetEvmAccountMockHandler = ( overrideResponse?: | EvmAccount | ((info: Parameters<Parameters<typeof http.get>[1]>[0]) => Promise<EvmAccount> | EvmAccount), ) => { return http.get("*/v2/evm/accounts/:address", async info => { await delay(0); return new HttpResponse( JSON.stringify( overrideResponse !== undefined ? typeof overrideResponse === "function" ? await overrideResponse(info) : overrideResponse : getGetEvmAccountResponseMock(), ), { status: 200, headers: { "Content-Type": "application/json" } }, ); }); }; export const getUpdateEvmAccountMockHandler = ( overrideResponse?: | EvmAccount | ((info: Parameters<Parameters<typeof http.put>[1]>[0]) => Promise<EvmAccount> | EvmAccount), ) => { return http.put("*/v2/evm/accounts/:address", async info => { await delay(0); return new HttpResponse( JSON.stringify( overrideResponse !== undefined ? typeof overrideResponse === "function" ? await overrideResponse(info) : overrideResponse : getUpdateEvmAccountResponseMock(), ), { status: 200, headers: { "Content-Type": "application/json" } }, ); }); }; export const getGetEvmAccountByNameMockHandler = ( overrideResponse?: | EvmAccount | ((info: Parameters<Parameters<typeof http.get>[1]>[0]) => Promise<EvmAccount> | EvmAccount), ) => { return http.get("*/v2/evm/accounts/by-name/:name", async info => { await delay(0); return new HttpResponse( JSON.stringify( overrideResponse !== undefined ? typeof overrideResponse === "function" ? await overrideResponse(info) : overrideResponse : getGetEvmAccountByNameResponseMock(), ), { status: 200, headers: { "Content-Type": "application/json" } }, ); }); }; export const getSendEvmTransactionMockHandler = ( overrideResponse?: | SendEvmTransaction200 | (( info: Parameters<Parameters<typeof http.post>[1]>[0], ) => Promise<SendEvmTransaction200> | SendEvmTransaction200), ) => { return http.post("*/v2/evm/accounts/:address/send/transaction", async info => { await delay(0); return new HttpResponse( JSON.stringify( overrideResponse !== undefined ? typeof overrideResponse === "function" ? await overrideResponse(info) : overrideResponse : getSendEvmTransactionResponseMock(), ), { status: 200, headers: { "Content-Type": "application/json" } }, ); }); }; export const getSignEvmTransactionMockHandler = ( overrideResponse?: | SignEvmTransaction200 | (( info: Parameters<Parameters<typeof http.post>[1]>[0], ) => Promise<SignEvmTransaction200> | SignEvmTransaction200), ) => { return http.post("*/v2/evm/accounts/:address/sign/transaction", async info => { await delay(0); return new HttpResponse( JSON.stringify( overrideResponse !== undefined ? typeof overrideResponse === "function" ? await overrideResponse(info) : overrideResponse : getSignEvmTransactionResponseMock(), ), { status: 200, headers: { "Content-Type": "application/json" } }, ); }); }; export const getSignEvmHashMockHandler = ( overrideResponse?: | SignEvmHash200 | (( info: Parameters<Parameters<typeof http.post>[1]>[0], ) => Promise<SignEvmHash200> | SignEvmHash200), ) => { return http.post("*/v2/evm/accounts/:address/sign", async info => { await delay(0); return new HttpResponse( JSON.stringify( overrideResponse !== undefined ? typeof overrideResponse === "function" ? await overrideResponse(info) : overrideResponse : getSignEvmHashResponseMock(), ), { status: 200, headers: { "Content-Type": "application/json" } }, ); }); }; export const getSignEvmMessageMockHandler = ( overrideResponse?: | SignEvmMessage200 | (( info: Parameters<Parameters<typeof http.post>[1]>[0], ) => Promise<SignEvmMessage200> | SignEvmMessage200), ) => { return http.post("*/v2/evm/accounts/:address/sign/message", async info => { await delay(0); return new HttpResponse( JSON.stringify( overrideResponse !== undefined ? typeof overrideResponse === "function" ? await overrideResponse(info) : overrideResponse : getSignEvmMessageResponseMock(), ), { status: 200, headers: { "Content-Type": "application/json" } }, ); }); }; export const getSignEvmTypedDataMockHandler = ( overrideResponse?: | SignEvmTypedData200 | (( info: Parameters<Parameters<typeof http.post>[1]>[0], ) => Promise<SignEvmTypedData200> | SignEvmTypedData200), ) => { return http.post("*/v2/evm/accounts/:address/sign/typed-data", async info => { await delay(0); return new HttpResponse( JSON.stringify( overrideResponse !== undefined ? typeof overrideResponse === "function" ? await overrideResponse(info) : overrideResponse : getSignEvmTypedDataResponseMock(), ), { status: 200, headers: { "Content-Type": "application/json" } }, ); }); }; export const getImportEvmAccountMockHandler = ( overrideResponse?: | EvmAccount | ((info: Parameters<Parameters<typeof http.post>[1]>[0]) => Promise<EvmAccount> | EvmAccount), ) => { return http.post("*/v2/evm/accounts/import", async info => { await delay(0); return new HttpResponse( JSON.stringify( overrideResponse !== undefined ? typeof overrideResponse === "function" ? await overrideResponse(info) : overrideResponse : getImportEvmAccountResponseMock(), ), { status: 201, headers: { "Content-Type": "application/json" } }, ); }); }; export const getExportEvmAccountMockHandler = ( overrideResponse?: | ExportEvmAccount200 | (( info: Parameters<Parameters<typeof http.post>[1]>[0], ) => Promise<ExportEvmAccount200> | ExportEvmAccount200), ) => { return http.post("*/v2/evm/accounts/:address/export", async info => { await delay(0); return new HttpResponse( JSON.stringify( overrideResponse !== undefined ? typeof overrideResponse === "function" ? await overrideResponse(info) : overrideResponse : getExportEvmAccountResponseMock(), ), { status: 200, headers: { "Content-Type": "application/json" } }, ); }); }; export const getExportEvmAccountByNameMockHandler = ( overrideResponse?: | ExportEvmAccountByName200 | (( info: Parameters<Parameters<typeof http.post>[1]>[0], ) => Promise<ExportEvmAccountByName200> | ExportEvmAccountByName200), ) => { return http.post("*/v2/evm/accounts/export/by-name/:name", async info => { await delay(0); return new HttpResponse( JSON.stringify( overrideResponse !== undefined ? typeof overrideResponse === "function" ? await overrideResponse(info) : overrideResponse : getExportEvmAccountByNameResponseMock(), ), { status: 200, headers: { "Content-Type": "application/json" } }, ); }); }; export const getEvmAccountsMock = () => [ getListEvmAccountsMockHandler(), getCreateEvmAccountMockHandler(), getGetEvmAccountMockHandler(), getUpdateEvmAccountMockHandler(), getGetEvmAccountByNameMockHandler(), getSendEvmTransactionMockHandler(), getSignEvmTransactionMockHandler(), getSignEvmHashMockHandler(), getSignEvmMessageMockHandler(), getSignEvmTypedDataMockHandler(), getImportEvmAccountMockHandler(), getExportEvmAccountMockHandler(), getExportEvmAccountByNameMockHandler(), ];