diff --git a/e2e/mockServer.d.ts b/e2e/mockServer.d.ts new file mode 100644 index 0000000000..26ad444999 --- /dev/null +++ b/e2e/mockServer.d.ts @@ -0,0 +1,3 @@ +import { Server } from 'http'; + +export declare function startMockServer(): Promise; diff --git a/e2e/mockServer.js b/e2e/mockServer.js new file mode 100755 index 0000000000..bfb8118970 --- /dev/null +++ b/e2e/mockServer.js @@ -0,0 +1,124 @@ +/* eslint-disable @typescript-eslint/no-var-requires */ +const fs = require('fs').promises; +const path = require('path'); + +const express = require('express'); + +const app = express(); +const PORT = 3001; + +/** + * @typedef {import('express').Request} Request + * @typedef {import('express').Response} Response + * @typedef {import('http').Server} Server + */ + +// Add request logging middleware +app.use((req, res, next) => { + console.log(`\n�incoming Request: ${req.method} ${req.path}`); + console.log('Query Parameters:', req.query); + next(); +}); + +/** + * Middleware to serve JSON files based on request paths and query parameters. + * @param {Request} req - Express request object + * @param {Response} res - Express response object + */ +app.use(async (req, res) => { + try { + const filePath = req.path.slice(1).replace(/\//g, '_'); + let filename = '_' + filePath; + for (const [key, value] of Object.entries(req.query)) { + filename += `_${key}_${value}`; + } + filename = filename.slice(0, 200) + '.json'; + + const dir = path.join(__dirname, 'responses'); + const jsonPath = path.join(dir, filename); + + console.log('\n📂 File Operation Details:'); + console.log('Directory:', dir); + console.log('Generated Filename:', filename); + console.log('Full Path:', jsonPath); + + // Check if directory exists + try { + await fs.access(dir); + console.log('✅ Responses directory found'); + } catch (error) { + console.error('❌ Responses directory not found:', error.message); + return res.status(500).json({ + error: 'Server configuration error', + details: 'Responses directory not found', + }); + } + + // Check if file exists before trying to read it + try { + await fs.access(jsonPath); + console.log('✅ Response file found'); + } catch (error) { + console.error('❌ Response file not found:', error.message); + return res.status(404).json({ + error: 'Response not found', + details: 'No matching response file found for this request', + }); + } + + // Read and parse the file + try { + const data = await fs.readFile(jsonPath, 'utf8'); + console.log('✅ File successfully read'); + + const parsedData = JSON.parse(data); + console.log('✅ JSON successfully parsed'); + + res.json(parsedData); + console.log('✅ Response sent successfully'); + } catch (error) { + console.error('❌ Error reading or parsing file:', error.message); + return res.status(500).json({ + error: 'File processing error', + details: error.message, + }); + } + } catch (error) { + console.error('\n❌ Unexpected error:', error.message); + res.status(500).json({ + error: 'Server error', + details: error.message, + }); + } +}); + +/** + * Starts the mock server. + * @returns {Promise} A promise that resolves to the HTTP server instance or null if the server is already running. + */ +const startMockServer = () => { + return new Promise((resolve) => { + const server = app.listen(PORT, () => { + console.log('\n🚀 Mock API server running on http://localhost:' + PORT); + resolve(server); + }); + + server.on('error', (error) => { + if (error.code === 'EADDRINUSE') { + console.error( + `\n❌ Port ${PORT} already in use, not starting a new server`, + ); + resolve(null); + } else { + console.error('\n❌ Error starting server:', error); + resolve(null); + } + }); + }); +}; + +if (require.main === module) { + startMockServer(); +} + +module.exports = { startMockServer }; diff --git a/e2e/parallel/vitest.config.ts b/e2e/parallel/vitest.config.ts index f08bf9cbd9..eeb24d78d8 100644 --- a/e2e/parallel/vitest.config.ts +++ b/e2e/parallel/vitest.config.ts @@ -8,7 +8,8 @@ export default mergeConfig( defineConfig({ test: { bail: 1, - threads: false, + isolate: false, + fileParallelism: false, }, }) as UserConfig, ); diff --git a/e2e/responses/_v1_quote_bridgeVersion_4_buyToken_0xff970a61a04b1ca14834a43f5de4533ebddb5cc8_chainId_1_currency_USD_fromAddress_0x3c44cdddb6a900fa2b585dd299e03d12fa4293bc_refuel_false_sellAmount_1000000000000000000_.json b/e2e/responses/_v1_quote_bridgeVersion_4_buyToken_0xff970a61a04b1ca14834a43f5de4533ebddb5cc8_chainId_1_currency_USD_fromAddress_0x3c44cdddb6a900fa2b585dd299e03d12fa4293bc_refuel_false_sellAmount_1000000000000000000_.json new file mode 100644 index 0000000000..1d929aaa30 --- /dev/null +++ b/e2e/responses/_v1_quote_bridgeVersion_4_buyToken_0xff970a61a04b1ca14834a43f5de4533ebddb5cc8_chainId_1_currency_USD_fromAddress_0x3c44cdddb6a900fa2b585dd299e03d12fa4293bc_refuel_false_sellAmount_1000000000000000000_.json @@ -0,0 +1,169 @@ +{ + "sellTokenAddress": "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE", + "sellTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 2497.65, + "available": true + } + }, + "buyTokenAddress": "0xff970a61a04b1ca14834a43f5de4533ebddb5cc8", + "buyTokenAsset": { + "assetCode": "0xff970a61a04b1ca14834a43f5de4533ebddb5cc8", + "decimals": 6, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668633498/assets/ethereum/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48.png", + "name": "USD Coin (Bridged)", + "network": "arbitrum", + "symbol": "USDCe", + "networks": { + "10": { + "address": "0x7f5c764cbc14f9669b88837ca1490cca17c31607", + "decimals": 6 + }, + "137": { + "address": "0x2791bca1f2de4661ed88a30c99a7a9449aa84174", + "decimals": 6 + }, + "42161": { + "address": "0xff970a61a04b1ca14834a43f5de4533ebddb5cc8", + "decimals": 6 + }, + "43114": { + "address": "0xa7d7079b0fead91f3e65f86e8915cb59c1a4c664", + "decimals": 6 + } + }, + "chainId": 42161, + "price": { + "value": 1.0002808658027897, + "available": true + }, + "totalPrice": { + "value": 2469.4951229772973, + "available": true + } + }, + "allowanceTarget": "0xa5f565650890fba1824ee0f21ebbbf660a179934", + "allowanceNeeded": false, + "to": "0xa5f565650890fba1824ee0f21ebbbf660a179934", + "data": "0x62df939ac48d9016703f662e03176448a557d06b39b4095d52f3fc718baab010", + "sellAmount": "1000000000000000000", + "sellAmountMinusFees": "989000000000000000", + "sellAmountDisplay": "1000000000000000000", + "sellAmountInEth": "1000000000000000000", + "buyAmount": "2468801721", + "buyAmountMinusFees": "2468801721", + "buyAmountDisplay": "2468801721", + "buyAmountDisplayMinimum": "2468801721", + "buyAmountInEth": "988727452996735908", + "tradeAmountUSD": 2497.65, + "tradeFeeAmountUSD": 27.47415, + "value": "1000000000000000000", + "gasPrice": "", + "source": "relay", + "protocols": [ + { + "name": "relay", + "part": 100 + } + ], + "feeTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 27.47415, + "available": true + } + }, + "fee": "11000000000000000", + "feeInEth": "11000000000000000", + "feePercentageBasisPoints": "11000000000000000", + "tradeType": "exact_input", + "from": "0x3c44cdddb6a900fa2b585dd299e03d12fa4293bc", + "defaultGasLimit": "70000", + "swapType": "cross-chain", + "txTarget": "0xa5f565650890fba1824ee0f21ebbbf660a179934", + "chainId": 1, + "routes": [], + "refuel": null, + "no_approval": true +} \ No newline at end of file diff --git a/e2e/responses/_v1_quote_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_sellToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeee.json b/e2e/responses/_v1_quote_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_sellToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeee.json new file mode 100644 index 0000000000..c157b486e6 --- /dev/null +++ b/e2e/responses/_v1_quote_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_sellToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeee.json @@ -0,0 +1,202 @@ +{ + "sellTokenAddress": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", + "sellTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 2497650, + "available": true + } + }, + "buyTokenAddress": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599", + "buyTokenAsset": { + "assetCode": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599", + "decimals": 8, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1693266228/assets/ethereum/0x2260fac5e5542a773aa44fbcfedf7c193bc2c599.png", + "name": "Wrapped Bitcoin", + "network": "mainnet", + "symbol": "WBTC", + "networks": { + "1": { + "address": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599", + "decimals": 8 + }, + "10": { + "address": "0x68f180fcce6836688e9084f035309e29bf0a2095", + "decimals": 8 + }, + "137": { + "address": "0x1bfd67037b42cf73acf2047067bd4f2c47d9bfd6", + "decimals": 8 + }, + "42161": { + "address": "0x2f2a2543b76a4166549f7aab2e75bef0aefc5b0f", + "decimals": 8 + }, + "43114": { + "address": "0x50b7545627a5162f82a992c33b87adc75187b218", + "decimals": 8 + }, + "81457": { + "address": "0xf7bc58b8d8f97adc129cfc4c9f45ce3c0e1d2692", + "decimals": 8 + } + }, + "chainId": 1, + "price": { + "value": 68713.69097644708, + "available": true + }, + "totalPrice": { + "value": 2463780.095854492, + "available": true + } + }, + "allowanceTarget": "0x00000000009726632680fb29d3f7a9734e3010e2", + "allowanceNeeded": false, + "to": "0x111111125421ca6dc452d289314280a0f8842a65", + "data": "0x07ed23790000000000000000000000003451b6b219478037a1ac572706627fc2bda1e812000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee0000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c5990000000000000000000000003451b6b219478037a1ac572706627fc2bda1e81200000000000000000000000000000000009726632680fb29d3f7a9734e3010e2000000000000000000000000000000000000000000000035bfd39ccecfce000000000000000000000000000000000000000000000000000000000000d39466270000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000022030000000000000000000000000000000000000021e50021b700216d00215300a0c9e75c48000000000000000602020000000000000000000000000000000000000000000021250018b3000e5300a007e5c0d2000000000000000000000000000000000000000000000e2f00075a00074000a0c9e75c48000000000000002606060000000000000000000000000000000000000000000007120004c400008d00a007e5c0d200000000000000000000000000000000000000000000000000006900001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db002a00000000000000000000000000000000000000000000000000000000db3424a94ee63c1e501c7bbec68d12a0d1830360f8ec58fa599ba1b0e9bc02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000041300001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db000a0860a32ec0000000000000000000000000000000000000000000000014a3c5fec633200000003d05100ead050515e10fdb3540ccd6f8236c46790508a76c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200c4e525b10b00000000000000000000000000000000000000000000000000000000000000200000000000000000000000009e2505ff3565d7c83a9cbcfd260c4a545780b40200000000000000000000000004f57b77cd9102a3774570de93008e9c57b9f1460000000000000000000000003451b6b219478037a1ac572706627fc2bda1e812000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014a3c5fec633200000000000000000000000000000000000000000000000000000000000dd4ae792900000000000000000000000000000000000000000000000000000000671fda070000000000000000000000000000000000000000000000000019a4d141eb2f7f1c963ccf264b49cf98f0c411dba10d74000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000026000000000000000000000000067297ee4eb097e072b4ab6f1620268061ae8046400000000000000000000000060cba82ddbf4b5ddcd4398cdd05354c6a790c309000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002e0000000000000000000000000000000000000000000000000000000000000036000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041bf1ed6db4ddb2af1d888b9f1058e1f82999d3605ed05a752c7b206cde9d28e094d23663844b32171fed96a35387f77ad6598c1a26c466fd4c8ef3f3dec3ed5381c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004113de662e86757dc8ad33538b4587773f02cab6f8526653077f4161cfb970691b4a9bf56aa4d2678cca3a0a277762373b19546c094b3ba3cde7f452473895969d1b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a007e5c0d200000000000000000000000000000000000000000000000000022a00001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db05120111111125421ca6dc452d289314280a0f8842a65c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20124cc713a044c5bcbc06135971b87bbe0c9a02f46f5b25aa23946934c4dcfcb0672dd6a31b9000000000000000000000000807cf9a772d5a3f9cefbc1192e939d62f0d9bd380000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000000000000000000000000000000000578e611f510000000000000000000000000000000000000000000000082b7e5f83c9920000000000000000000000000000000001b2e100671fd9da000000000000000000000000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041d7709ee2cc8b5901fd17c7d72f6344a91d8b40c2a31e413ce62fe44e0964f530724f459924d668ca8ca95f07828bd052f6564df4f47cea74892a4dd3a9b359941b000000000000000000000000000000000000000000000000000000000000000020d6bdbf78dac17f958d2ee523a2206206994597c13d831ec700a0c9e75c48000000000000161205050000000000000000000000000000000000000006a700065800044800004f02a0000000000000000000000000000000000000000000000000000000000438e021ee63c1e50056534741cd8b152df6d48adf7ac51f75169a83b2dac17f958d2ee523a2206206994597c13d831ec700a0860a32ec0000000000000000000000000000000000000000000000000000000b8652d8670003d05100ead050515e10fdb3540ccd6f8236c46790508a76dac17f958d2ee523a2206206994597c13d831ec700c4e525b10b00000000000000000000000000000000000000000000000000000000000000200000000000000000000000009e2505ff3565d7c83a9cbcfd260c4a545780b40200000000000000000000000004f57b77cd9102a3774570de93008e9c57b9f1460000000000000000000000003451b6b219478037a1ac572706627fc2bda1e812000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec70000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c59900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b8652d867000000000000000000000000000000000000000000000000000000000448d19800000000000000000000000000000000000000000000000000000000671fda070000000000000000000000000000000000000000000000000008c6c1bedc8c5ba1bc88376f1e45a8b4bf5d0319daecdc000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000026000000000000000000000000067297ee4eb097e072b4ab6f1620268061ae8046400000000000000000000000060cba82ddbf4b5ddcd4398cdd05354c6a790c309000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002e0000000000000000000000000000000000000000000000000000000000000036000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041fac1b1e44324c8bc3ef46bf1b28b6500936e30c7ac9a7e0b6aebf786434a14c303028de29a81096058925924a2ada1df51f3c9bcd4219e0203e5f7862bc671be1c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004131eec30bb6711381c6f52c5682e823ec8bedb61df93116cb4c4617c3f3ca0bd73336d46cee29a99953962e31290f7d95864e2d913807549f7feab53753d01a371b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005100111111125421ca6dc452d289314280a0f8842a65dac17f958d2ee523a2206206994597c13d831ec70124cc713a0416b3f52f9cb906bff8636bf7facc36b3dd9be54afb366b5de9da9bd0aee9ed92000000000000000000000000807cf9a772d5a3f9cefbc1192e939d62f0d9bd3800000000000000000000000000000000000000000000000000000000000000000000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000000000000000000000000000000000000f65aab4000000000000000000000000000000000000000000000000000000297d2a3e3f000000000000000000000000000001b2e300671fd9da00000000000000000000000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004129f73b9abcf7b5204580138b84cab4c58163016a6c96205a830d67af7c78defa6b2c2217ddb4c4241140e609c5f84dc3b57f2a38723007f7c7a9dea822a4ac451b0000000000000000000000000000000000000000000000000000000000000002a0000000000000000000000000000000000000000000000000000000001293a9d7ee63c1e5009db9e0e53058c89e5b94e29621a205198648425bdac17f958d2ee523a2206206994597c13d831ec700a007e5c0d2000000000000000000000000000000000000000a3c00076000075a00074000a0c9e75c48000000000000002b04030000000000000000000000000000000000000000000007120002db00008d00a007e5c0d200000000000000000000000000000000000000000000000000006900001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db002a000000000000000000000000000000000000000000000063869f2648345b0e8baee63c1e500c2e9f25be6257c210d7adf0d4cd6e3e881ba25f8c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000022a00001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db05100111111125421ca6dc452d289314280a0f8842a65c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20124cc713a04b0e2b04a484421b24dbbaeff4b86575258228ff68cca64cdac239adc560fc4f9000000000000000000000000807cf9a772d5a3f9cefbc1192e939d62f0d9bd3800000000000000000000000000000000000000000000000000000000000000000000000000000000000000006b175474e89094c44da98b954eedeac495271d0f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200000000000000000000000000000000000000000000085ec1d8c504894dace8000000000000000000000000000000000000000000000000dc283ff2eccc0000000000000000000000000000000001b2e400671fd9da0000000000000000000000000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000418af0e5cbccd5f99b58e435437529a3c2cbdddc64603dc11308185e28fc2976507af12983c5758a5ce37cd4ba5fb52b9ce9521c8b1618484cdf4e499d13282b571c0000000000000000000000000000000000000000000000000000000000000000a007e5c0d200000000000000000000000000000000000000000000000000041300001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db000a0860a32ec0000000000000000000000000000000000000000000000093eb0af73719100000003d05120ead050515e10fdb3540ccd6f8236c46790508a76c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200c4e525b10b000000000000000000000000000000000000000000000000000000000000002000000000000000000000000028cacd5e26a719f139e2105ca1efc3d9dc892826000000000000000000000000ff8ba4d1fc3762f6154cc942ccf30049a2a0cec60000000000000000000000003451b6b219478037a1ac572706627fc2bda1e812000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000006b175474e89094c44da98b954eedeac495271d0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000093eb0af7371910000000000000000000000000000000000000000000000005a104aee764a2400000000000000000000000000000000000000000000000000000000000000671fda07000000000000000000000000000000000000000000000000000af49faf58fe3b5efbbd65e3a1429abaaa116c4fe1b39a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000026000000000000000000000000067297ee4eb097e072b4ab6f1620268061ae8046400000000000000000000000060cba82ddbf4b5ddcd4398cdd05354c6a790c309000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002e0000000000000000000000000000000000000000000000000000000000000036000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041b1285f6254df0e2efea253b59f04d9083865e9a67d6f148e12ef2c341d03ea016f90110dea0f56fbf91bdc7895ed7ba0b90032b000fed382625fd9581e1bcf3a1b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041bb62f71df427aea3ca0480312d25ccc3b8b210a6c699b4e24d5febf4488a6772155862126e01f3ca8cb6f53ea973bc39ff4d9815335a6677583e809e1df25daa1b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d6bdbf786b175474e89094c44da98b954eedeac495271d0f00a03dd5cfd100a0c9e75c48000000000000001e12020000000000000000000000000000000000000000000002ae00025f00004f02a00000000000000000000000000000000000000000000000000000000001b1a26dee63c1e5009a772018fbd77fcd2d25657e5c547baff3fd7d16a0b86991c6218b36c1d19d4a2e9eb0ce3606eb485100111111125421ca6dc452d289314280a0f8842a65a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480124cc713a04a55bcacbc5014787618e1052050a78fa5c34c4df384c86f718285f38bf7a3a0c000000000000000000000000807cf9a772d5a3f9cefbc1192e939d62f0d9bd3800000000000000000000000000000000000000000000000000000000000000000000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48000000000000000000000000000000000000000000000000000000000f5c1bdd00000000000000000000000000000000000000000000000000000029742f8e55000000000000000000000000000001b2e500671fd9da000000000000000000000000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041bba4c007a81157be741096f137326fdc444443cce28a04dbddf8bb97784c5ba438983846d7730dcb2b711e4d96a62de71af0cb06f1aa06b11fabe1f41261fc951b0000000000000000000000000000000000000000000000000000000000000002a0000000000000000000000000000000000000000000000000000000001954b807ee63c1e50099ac8ca7087fa4a2a1fb6357269965a2014abc35a0b86991c6218b36c1d19d4a2e9eb0ce3606eb4800a0c9e75c480000160d0604020101010000000000000008440007b700072a0004dc00038e0002d500021c00010e00a007e5c0d20000000000000000000000000000000000000000000000000000ea00001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db051007f86bf177dd4f3494b841a37e810a34dd56c829bc02aaa39b223fe8d0a0e5c4f27ead9083c756cc20044394747c5000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000289fb76000000000000000000000000000000000000000000000000000000000000000000a007e5c0d20000000000000000000000000000000000000000000000000000ea00001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db05100f5f5b97624542d72a9e06f04804bf81baa15e2b4c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20044394747c5000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000289890e000000000000000000000000000000000000000000000000000000000000000000a007e5c0d200000000000000000000000000000000000000000000000000009500001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db00c20c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2bb2b8038a1640196fbe3e38816f3e67cba72d9406ae4071118002dc6c0bb2b8038a1640196fbe3e38816f3e67cba72d94000000000000000000000000000000000000000000000000000000000028892e6c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000009500001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db00c20c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2ceff51756c56ceffca006cd410b03ffc46dd3a586ae4071118002dc6c0ceff51756c56ceffca006cd410b03ffc46dd3a58000000000000000000000000000000000000000000000000000000000513c307c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000012a00001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db05100d17b3c9784510e33cd5b87b490e79253bcd81e2ec02aaa39b223fe8d0a0e5c4f27ead9083c756cc2004458d30ac9000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c5990000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a32d8f900000000000000000000000000000000000000000000000000000000000000000000000000000000000000003451b6b219478037a1ac572706627fc2bda1e812000000000000000000000000000000000000000000000000000000006726712f00a007e5c0d200000000000000000000000000000000000000000000000000022a00001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db05100111111125421ca6dc452d289314280a0f8842a65c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20124cc713a0498eee6b3a027894952a845a1129ad424f65458f530929a38dc72e9fdd25e7c51000000000000000000000000807cf9a772d5a3f9cefbc1192e939d62f0d9bd3800000000000000000000000000000000000000000000000000000000000000000000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000000000000000000000000000000000000f66466b000000000000000000000000000000000000000000000003deb51fc529960000000000000000000000000000000001b2ee00671fd9da000000000000000000000000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041595a7086347b031fdbf91b46a867655785ec8372a33bd990a626b2cf9fb97d75694d9cd932f390606a468be98005672a7346984b624a99cfffc3fb7d4709ecfe1c0000000000000000000000000000000000000000000000000000000000000000a007e5c0d200000000000000000000000000000000000000000000000000006900001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db002a00000000000000000000000000000000000000000000000000000000021043940ee63c1e500cbcdf9626bc03e24f779434178a73a0b4bad62edc02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000006900001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db002a00000000000000000000000000000000000000000000000000000000037e35c82ee63c1e5004585fe77225b41b697c938b018e2ac67ac5a20c0c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20020d6bdbf782260fac5e5542a773aa44fbcfedf7c193bc2c59900a0f2fa6b662260fac5e5542a773aa44fbcfedf7c193bc2c59900000000000000000000000000000000000000000000000000000000d5b783a100000000000000000000000000001c6980a06c4eca272260fac5e5542a773aa44fbcfedf7c193bc2c599111111125421ca6dc452d289314280a0f8842a650000000000000000000000000000000000000000000000000000000000d6f29312", + "sellAmount": "1000000000000000000000", + "sellAmountMinusFees": "991500000000000000000", + "sellAmountDisplay": "1000000000000000000000", + "sellAmountInEth": "1000000000000000000000", + "buyAmount": "3585573793", + "buyAmountMinusFees": "3585573793", + "buyAmountDisplay": "3585573793", + "buyAmountDisplayMinimum": "3549718056", + "buyAmountInEth": "986439291275595818190", + "tradeAmountUSD": 2497650, + "tradeFeeAmountUSD": 21230.025, + "value": "1000000000000000000000", + "gasPrice": "18255480199", + "source": "1inch", + "protocols": [ + { + "name": "INTEGRAL", + "part": 2.666666667 + }, + { + "name": "UNISWAP_V3", + "part": 42.11111111 + }, + { + "name": "PMM11", + "part": 13.22222222 + }, + { + "name": "PMM15", + "part": 27.55555556 + }, + { + "name": "LITEPSM_USDC", + "part": 11.11111111 + }, + { + "name": "CURVE_V2_TRICRYPTO_NG", + "part": 1.333333333 + }, + { + "name": "UNISWAP_V2", + "part": 0.6666666667 + }, + { + "name": "SUSHI", + "part": 1.333333333 + } + ], + "feeTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 21230.025, + "available": true + } + }, + "fee": "8500000000000000000", + "feeInEth": "8500000000000000000", + "feePercentageBasisPoints": "8500000000000000", + "tradeType": "exact_input", + "from": "0xa0Ee7A142d267C1f36714E4a8F75612F20a79720", + "defaultGasLimit": "350000", + "swapType": "normal", + "txTarget": "0x00000000009726632680fb29d3f7a9734e3010e2", + "chainId": 1 +} \ No newline at end of file diff --git a/e2e/responses/_v1_quote_buyToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_sellToken_0x2260fac5e5542a773aa44fbcfed.json b/e2e/responses/_v1_quote_buyToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_sellToken_0x2260fac5e5542a773aa44fbcfed.json new file mode 100644 index 0000000000..09f8ef4f34 --- /dev/null +++ b/e2e/responses/_v1_quote_buyToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_sellToken_0x2260fac5e5542a773aa44fbcfed.json @@ -0,0 +1,174 @@ +{ + "sellTokenAddress": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599", + "sellTokenAsset": { + "assetCode": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599", + "decimals": 8, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1693266228/assets/ethereum/0x2260fac5e5542a773aa44fbcfedf7c193bc2c599.png", + "name": "Wrapped Bitcoin", + "network": "mainnet", + "symbol": "WBTC", + "networks": { + "1": { + "address": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599", + "decimals": 8 + }, + "10": { + "address": "0x68f180fcce6836688e9084f035309e29bf0a2095", + "decimals": 8 + }, + "137": { + "address": "0x1bfd67037b42cf73acf2047067bd4f2c47d9bfd6", + "decimals": 8 + }, + "42161": { + "address": "0x2f2a2543b76a4166549f7aab2e75bef0aefc5b0f", + "decimals": 8 + }, + "43114": { + "address": "0x50b7545627a5162f82a992c33b87adc75187b218", + "decimals": 8 + }, + "81457": { + "address": "0xf7bc58b8d8f97adc129cfc4c9f45ce3c0e1d2692", + "decimals": 8 + } + }, + "chainId": 1, + "price": { + "value": 68713.5566865378, + "available": true + }, + "totalPrice": { + "value": 2543.23646711564, + "available": true + } + }, + "buyTokenAddress": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", + "buyTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 2497.65, + "available": true + } + }, + "allowanceTarget": "0x00000000009726632680fb29d3f7a9734e3010e2", + "allowanceNeeded": true, + "to": "0xdef1c0ded9bec7f1a1670819833240f027b25eff", + "data": "0x803ba26d000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000003879df0000000000000000000000000000000000000000000000000dfee9681ffb4000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000422260fac5e5542a773aa44fbcfedf7c193bc2c5990001f4dac17f958d2ee523a2206206994597c13d831ec70001f4c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000000000000000000000000000000000000000869584cd0000000000000000000000001000000000000000000000000000000000000011000000000000000000000000000000000000000018b3346a32618d5836b67337", + "sellAmount": "3701215", + "sellAmountMinusFees": "3701215", + "sellAmountDisplay": "3701215", + "sellAmountInEth": "1018251743485132062", + "buyAmount": "1000000000000000000", + "buyAmountMinusFees": "1000000000000000000", + "buyAmountDisplay": "1000000000000000000", + "buyAmountDisplayMinimum": "1000000000000000000", + "buyAmountInEth": "1000000000000000000", + "tradeAmountUSD": 2543.23646711564, + "tradeFeeAmountUSD": 21.230025, + "value": "0", + "gasPrice": "18210000000", + "source": "0x", + "protocols": [ + { + "name": "Uniswap_V3", + "part": 100 + } + ], + "feeTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 21.230025, + "available": true + } + }, + "fee": "8500000000000000", + "feeInEth": "8500000000000000", + "feePercentageBasisPoints": "8500000000000000", + "tradeType": "exact_output", + "from": "0xa0Ee7A142d267C1f36714E4a8F75612F20a79720", + "defaultGasLimit": "350000", + "swapType": "normal", + "txTarget": "0x00000000009726632680fb29d3f7a9734e3010e2", + "chainId": 1 +} \ No newline at end of file diff --git a/e2e/responses/_v1_quote_buyToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_sellToken_0xa0b86991c6218b36c1d19d4a2e9.json b/e2e/responses/_v1_quote_buyToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_sellToken_0xa0b86991c6218b36c1d19d4a2e9.json new file mode 100644 index 0000000000..0559d59c24 --- /dev/null +++ b/e2e/responses/_v1_quote_buyToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_sellToken_0xa0b86991c6218b36c1d19d4a2e9.json @@ -0,0 +1,178 @@ +{ + "sellTokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "sellTokenAsset": { + "assetCode": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "decimals": 6, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668633498/assets/ethereum/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48.png", + "name": "USD Coin", + "network": "mainnet", + "symbol": "USDC", + "networks": { + "1": { + "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "decimals": 6 + }, + "10": { + "address": "0x0b2c639c533813f4aa9d7837caf62653d097ff85", + "decimals": 6 + }, + "137": { + "address": "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359", + "decimals": 6 + }, + "42161": { + "address": "0xaf88d065e77c8cc2239327c5edb3a432268e5831", + "decimals": 6 + }, + "43114": { + "address": "0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e", + "decimals": 6 + }, + "56": { + "address": "0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d", + "decimals": 18 + }, + "8453": { + "address": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "decimals": 6 + } + }, + "chainId": 1, + "price": { + "value": 1.0000374853259604, + "available": true + }, + "totalPrice": { + "value": 5.000187426629802, + "available": true + } + }, + "buyTokenAddress": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", + "buyTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 4.9514086855714154, + "available": true + } + }, + "allowanceTarget": "0x00000000009726632680fb29d3f7a9734e3010e2", + "allowanceNeeded": true, + "to": "0x111111125421ca6dc452d289314280a0f8842a65", + "data": "0xcc713a04f63a78c9d4c581a362ff6cec9a9b65c71cf86c063f1844e39cfd20b0575d8c7c000000000000000000000000807cf9a772d5a3f9cefbc1192e939d62f0d9bd380000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb4800000000000000000000000000000000000000000000000000071a74dbb7bf5f00000000000000000000000000000000000000000000000000000000004c4b40000000000000000000000000000001b23900671fd9d100000000000000000000000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000004c4b40600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000419a764d877b000e4166be37fdacf32f973d218b4d663b5ab47f4a7e2d50fcae3b13974f138a6d1cf8121289e48399923bad1fc81dba0232bc7a7d8269b56ccc721b00000000000000000000000000000000000000000000000000000000000000d6f29312", + "sellAmount": "5000000", + "sellAmountMinusFees": "5000000", + "sellAmountDisplay": "5000000", + "sellAmountInEth": "2001956810053371", + "buyAmount": "1999422042931718", + "buyAmountMinusFees": "1982426955566799", + "buyAmountDisplay": "1982426955566799", + "buyAmountDisplayMinimum": "1962602686011131", + "buyAmountInEth": "1982426955566799", + "tradeAmountUSD": 5.000187426629802, + "tradeFeeAmountUSD": 0.042447779956989944, + "value": "0", + "gasPrice": "18255480199", + "source": "1inch", + "protocols": [ + { + "name": "PMM15", + "part": 100 + } + ], + "feeTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 0.042447779956989944, + "available": true + } + }, + "fee": "16995087364919", + "feeInEth": "16995087364919", + "feePercentageBasisPoints": "8500000000000000", + "tradeType": "exact_input", + "from": "0xa0Ee7A142d267C1f36714E4a8F75612F20a79720", + "defaultGasLimit": "350000", + "swapType": "normal", + "txTarget": "0x00000000009726632680fb29d3f7a9734e3010e2", + "chainId": 1 +} \ No newline at end of file diff --git a/e2e/responses/_v1_quote_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeee.json b/e2e/responses/_v1_quote_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeee.json new file mode 100644 index 0000000000..863278219f --- /dev/null +++ b/e2e/responses/_v1_quote_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeee.json @@ -0,0 +1,178 @@ +{ + "sellTokenAddress": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", + "sellTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.83, + "available": true + }, + "totalPrice": { + "value": 2497.83, + "available": true + } + }, + "buyTokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "buyTokenAsset": { + "assetCode": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "decimals": 6, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668633498/assets/ethereum/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48.png", + "name": "USD Coin", + "network": "mainnet", + "symbol": "USDC", + "networks": { + "1": { + "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "decimals": 6 + }, + "10": { + "address": "0x0b2c639c533813f4aa9d7837caf62653d097ff85", + "decimals": 6 + }, + "137": { + "address": "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359", + "decimals": 6 + }, + "42161": { + "address": "0xaf88d065e77c8cc2239327c5edb3a432268e5831", + "decimals": 6 + }, + "43114": { + "address": "0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e", + "decimals": 6 + }, + "56": { + "address": "0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d", + "decimals": 18 + }, + "8453": { + "address": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "decimals": 6 + } + }, + "chainId": 1, + "price": { + "value": 1.0001127139931656, + "available": true + }, + "totalPrice": { + "value": 2475.6540094008324, + "available": true + } + }, + "allowanceTarget": "0x00000000009726632680fb29d3f7a9734e3010e2", + "allowanceNeeded": false, + "to": "0x111111125421ca6dc452d289314280a0f8842a65", + "data": "0xa76dfc3b000000000000000000000000000000000000000000000000000000008c2aa9ea00000000000000003b6d0340b4e16d0168e52d35cacd2c6185b44281ec28c9dcd6f29312", + "sellAmount": "1000000000000000000", + "sellAmountMinusFees": "991500000000000000", + "sellAmountDisplay": "1000000000000000000", + "sellAmountInEth": "1000000000000000000", + "buyAmount": "2475375000", + "buyAmountMinusFees": "2475375000", + "buyAmountDisplay": "2475375000", + "buyAmountDisplayMinimum": "2351606250", + "buyAmountInEth": "991121897567421571", + "tradeAmountUSD": 2497.83, + "tradeFeeAmountUSD": 21.231555, + "value": "1000000000000000000", + "gasPrice": "19716032844", + "source": "1inch", + "protocols": [ + { + "name": "UNISWAP_V2", + "part": 100 + } + ], + "feeTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.83, + "available": true + }, + "totalPrice": { + "value": 21.231555, + "available": true + } + }, + "fee": "8500000000000000", + "feeInEth": "8500000000000000", + "feePercentageBasisPoints": "8500000000000000", + "tradeType": "exact_input", + "from": "0x70997970c51812dc3a010c7d01b50e0d17dc79c8", + "defaultGasLimit": "350000", + "swapType": "normal", + "txTarget": "0x00000000009726632680fb29d3f7a9734e3010e2", + "chainId": 1 +} \ No newline at end of file diff --git a/e2e/responses/_v1_quote_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_0xc18360217d8f7ab5e7c51656676.json b/e2e/responses/_v1_quote_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_0xc18360217d8f7ab5e7c51656676.json new file mode 100644 index 0000000000..86ae962caa --- /dev/null +++ b/e2e/responses/_v1_quote_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_0xc18360217d8f7ab5e7c51656676.json @@ -0,0 +1,154 @@ +{ + "sellTokenAddress": "0xc18360217d8f7ab5e7c516566761ea12ce7f9d72", + "sellTokenAsset": { + "assetCode": "0xc18360217d8f7ab5e7c516566761ea12ce7f9d72", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668486691/assets/ethereum/0xc18360217d8f7ab5e7c516566761ea12ce7f9d72.png", + "name": "Ethereum Name Service", + "network": "mainnet", + "symbol": "ENS", + "networks": { + "1": { + "address": "0xc18360217d8f7ab5e7c516566761ea12ce7f9d72", + "decimals": 18 + }, + "10": { + "address": "0x65559aa14915a70190438ef90104769e5e890a00", + "decimals": 18 + }, + "137": { + "address": "0xbd7a5cf51d22930b8b3df6d834f9bcef90ee7c4f", + "decimals": 18 + }, + "42161": { + "address": "0xfea31d704deb0975da8e77bf13e04239e70d7c28", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 16.010620449770414, + "available": true + }, + "totalPrice": { + "value": 16.010620449770414, + "available": true + } + }, + "buyTokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "buyTokenAsset": { + "assetCode": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "decimals": 6, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668633498/assets/ethereum/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48.png", + "name": "USD Coin", + "network": "mainnet", + "symbol": "USDC", + "networks": { + "1": { + "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "decimals": 6 + }, + "10": { + "address": "0x0b2c639c533813f4aa9d7837caf62653d097ff85", + "decimals": 6 + }, + "137": { + "address": "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359", + "decimals": 6 + }, + "42161": { + "address": "0xaf88d065e77c8cc2239327c5edb3a432268e5831", + "decimals": 6 + }, + "43114": { + "address": "0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e", + "decimals": 6 + }, + "56": { + "address": "0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d", + "decimals": 18 + }, + "8453": { + "address": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "decimals": 6 + } + }, + "chainId": 1, + "price": { + "value": 1.0001055272247494, + "available": true + }, + "totalPrice": { + "value": 15.741228952929795, + "available": true + } + }, + "allowanceTarget": "0x00000000009726632680fb29d3f7a9734e3010e2", + "allowanceNeeded": true, + "to": "0x111111125421ca6dc452d289314280a0f8842a65", + "data": "0xcc713a046767314a526bbe488460e2696175c7d4d74d7c482a84b1d1ff91abde392cc205000000000000000000000000807cf9a772d5a3f9cefbc1192e939d62f0d9bd380000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48000000000000000000000000c18360217d8f7ab5e7c516566761ea12ce7f9d720000000000000000000000000000000000000000000000000000000000f02aaf0000000000000000000000000000000000000000000000000dc283ff2eccc000000000000000000000000000000001ae7500671fd99d0000000000000000000000000000000000000000000000000000000000000000000000000000000001600000000000000000000000000000000000000000000000000dc283ff2eccc00020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041ff61ab67a38f0d783e7af8ae7ad8e3440db8a4921ddc7b994537356c481e245d57f3127d3796aebd87a2fd4667b5a4d7d1d68370286953ab67b624df5614b9771b00000000000000000000000000000000000000000000000000000000000000d6f29312", + "sellAmount": "1000000000000000000", + "sellAmountMinusFees": "991500000000000000", + "sellAmountDisplay": "1000000000000000000", + "sellAmountInEth": "6409811896634445", + "buyAmount": "15739568", + "buyAmountMinusFees": "15739568", + "buyAmountDisplay": "15739568", + "buyAmountDisplayMinimum": "14952590", + "buyAmountInEth": "6301961683913555", + "tradeAmountUSD": 16.010620449770414, + "tradeFeeAmountUSD": 0.1360902738230466, + "value": "0", + "gasPrice": "19730097407", + "source": "1inch", + "protocols": [ + { + "name": "PMM15", + "part": 100 + } + ], + "feeTokenAsset": { + "assetCode": "0xc18360217d8f7ab5e7c516566761ea12ce7f9d72", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668486691/assets/ethereum/0xc18360217d8f7ab5e7c516566761ea12ce7f9d72.png", + "name": "Ethereum Name Service", + "network": "mainnet", + "symbol": "ENS", + "networks": { + "1": { + "address": "0xc18360217d8f7ab5e7c516566761ea12ce7f9d72", + "decimals": 18 + }, + "10": { + "address": "0x65559aa14915a70190438ef90104769e5e890a00", + "decimals": 18 + }, + "137": { + "address": "0xbd7a5cf51d22930b8b3df6d834f9bcef90ee7c4f", + "decimals": 18 + }, + "42161": { + "address": "0xfea31d704deb0975da8e77bf13e04239e70d7c28", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 16.010620449770187, + "available": true + }, + "totalPrice": { + "value": 0.1360902738230466, + "available": true + } + }, + "fee": "8500000000000000", + "feeInEth": "54483401121392", + "feePercentageBasisPoints": "8500000000000000", + "tradeType": "exact_input", + "from": "0x70997970c51812dc3a010c7d01b50e0d17dc79c8", + "defaultGasLimit": "350000", + "swapType": "normal", + "txTarget": "0x00000000009726632680fb29d3f7a9734e3010e2", + "chainId": 1 +} \ No newline at end of file diff --git a/e2e/responses/_v1_quote_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_sellToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeee.json b/e2e/responses/_v1_quote_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_sellToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeee.json new file mode 100644 index 0000000000..cb229cf0a9 --- /dev/null +++ b/e2e/responses/_v1_quote_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_sellToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeee.json @@ -0,0 +1,206 @@ +{ + "sellTokenAddress": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", + "sellTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 24976495.615725607, + "available": true + } + }, + "buyTokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "buyTokenAsset": { + "assetCode": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "decimals": 6, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668633498/assets/ethereum/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48.png", + "name": "USD Coin", + "network": "mainnet", + "symbol": "USDC", + "networks": { + "1": { + "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "decimals": 6 + }, + "10": { + "address": "0x0b2c639c533813f4aa9d7837caf62653d097ff85", + "decimals": 6 + }, + "137": { + "address": "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359", + "decimals": 6 + }, + "42161": { + "address": "0xaf88d065e77c8cc2239327c5edb3a432268e5831", + "decimals": 6 + }, + "43114": { + "address": "0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e", + "decimals": 6 + }, + "56": { + "address": "0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d", + "decimals": 18 + }, + "8453": { + "address": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "decimals": 6 + } + }, + "chainId": 1, + "price": { + "value": 1.0000359139840278, + "available": true + }, + "totalPrice": { + "value": 24422967.66381763, + "available": true + } + }, + "allowanceTarget": "0x00000000009726632680fb29d3f7a9734e3010e2", + "allowanceNeeded": false, + "to": "0x111111125421ca6dc452d289314280a0f8842a65", + "data": "0x07ed23790000000000000000000000003451b6b219478037a1ac572706627fc2bda1e812000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480000000000000000000000003451b6b219478037a1ac572706627fc2bda1e81200000000000000000000000000000000009726632680fb29d3f7a9734e3010e20000000000000000000000000000000000000000000002197e3df12887923628000000000000000000000000000000000000000000000000000015c47ca1e466000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000e9f000000000000000000000000000000000000000e81000e53000e09000def00a0c9e75c4800000000000000050401000000000000000000000000000000000000000000000dc1000b330003aa00a007e5c0d20000000000000000000000000000000000000000000000000003860002ba00a0c9e75c480000000000001a14030100000000000000000000000000000000000000028c0001ff0001720000b900a007e5c0d200000000000000000000000000000000000000000000000000009500001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db00c20c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2bb2b8038a1640196fbe3e38816f3e67cba72d9406ae4071118002dc6c0bb2b8038a1640196fbe3e38816f3e67cba72d94000000000000000000000000000000000000000000000000000000000042a3f1fc02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000009500001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db00c20c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2ceff51756c56ceffca006cd410b03ffc46dd3a586ae4071118002dc6c0ceff51756c56ceffca006cd410b03ffc46dd3a58000000000000000000000000000000000000000000000000000000000c7f81f0c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000006900001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db002a00000000000000000000000000000000000000000000000000000000053559e53ee63c1e500cbcdf9626bc03e24f779434178a73a0b4bad62edc02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000006900001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db002a0000000000000000000000000000000000000000000000000000000006c8a91aaee63c1e5004585fe77225b41b697c938b018e2ac67ac5a20c0c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a0c9e75c480000000000000000260c00000000000000000000000000000000000000000000000000009e00004f02a00000000000000000000000000000000000000000000000000000008528c68802ee63c1e5019a772018fbd77fcd2d25657e5c547baff3fd7d162260fac5e5542a773aa44fbcfedf7c193bc2c59902a0000000000000000000000000000000000000000000000000000001a6d44d0d5fee63c1e50199ac8ca7087fa4a2a1fb6357269965a2014abc352260fac5e5542a773aa44fbcfedf7c193bc2c59900a007e5c0d200000000000000000000000000000000000000000000000000076500042900a0c9e75c48000000001b09070402010000000000000000000000000003fb00036e0002e100025400019b00010e00a007e5c0d20000000000000000000000000000000000000000000000000000ea00001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db05100f5f5b97624542d72a9e06f04804bf81baa15e2b4c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20044394747c50000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002c32de11eb000000000000000000000000000000000000000000000000000000000000000000a007e5c0d200000000000000000000000000000000000000000000000000006900001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db002a0000000000000000000000000000000000000000000000000000000593411afeeee63c1e5016ca298d2983ab03aa1da7679389d955a4efee15cc02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000009500001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db00c20c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20d4a11d5eeaac28ec3f61d100daf4d40471f18526ae4071198002dc6c00d4a11d5eeaac28ec3f61d100daf4d40471f1852000000000000000000000000000000000000000000000000000000b227d1fe17c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000006900001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db002a00000000000000000000000000000000000000000000000000000013854ec18b0ee63c1e501c7bbec68d12a0d1830360f8ec58fa599ba1b0e9bc02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000006900001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db002a00000000000000000000000000000000000000000000000000000019175e5dbb0ee63c1e50111b815efb8f581194ae79006d24e0d814b7697f6c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000006900001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db002a0000000000000000000000000000000000000000000000000000004b334b3d3a5ee63c1e5014e68ccd3e89f51c3074ca5072bbac773960dfa36c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a0c9e75c480000000000170d0a030100000000000000000000000000000000030e00025e00020f0000ff0000b05100c9f93163c99695c6526b799ebca2207fdf7d61addac17f958d2ee523a2206206994597c13d831ec700048dae733300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002c87c8295b0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000002a00000000000000000000000000000000000000000000000000000008594dc1429ee63c1e50004c8577958ccc170eb3d2cca76f9d51bc6e42d8fdac17f958d2ee523a2206206994597c13d831ec7490231373595f40ea48a7aab6cbcb0d377c6066e2dcadac17f958d2ee523a2206206994597c13d831ec700243eece7db0000000000000000000000003451b6b219478037a1ac572706627fc2bda1e812000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9400000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000242de18f8faee63c1e5003416cf6c708da44db2624d63ea0aaef7113527c6dac17f958d2ee523a2206206994597c13d831ec75120bebc44782c7db0a1a60cb6fe97d0b483032ff1c7dac17f958d2ee523a2206206994597c13d831ec700443df021240000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040026caa5af00a0c9e75c480000000000001b1104020000000000000000000000000000000000000002600001d30001460000b900a007e5c0d200000000000000000000000000000000000000000000000000009500001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db00c20c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2b4e16d0168e52d35cacd2c6185b44281ec28c9dc6ae4071118002dc6c0b4e16d0168e52d35cacd2c6185b44281ec28c9dc0000000000000000000000000000000000000000000000000000006fa4f2c715c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000006900001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db002a0000000000000000000000000000000000000000000000000000000e090641518ee63c1e500e0554a476a092703abdb3ef35c80e0d76d32939fc02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000006900001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db002a0000000000000000000000000000000000000000000000000000003b3c88bf003ee63c1e5008ad599c3a0ff1de082011efddc58f1908eb6e6d8c02aaa39b223fe8d0a0e5c4f27ead9083c756cc200a007e5c0d200000000000000000000000000000000000000000000000000006900001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db002a0000000000000000000000000000000000000000000000000000005e200b8fb5dee63c1e50088e6a0c2ddd26feeb64f039a2c41296fcb3f5640c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20020d6bdbf78a0b86991c6218b36c1d19d4a2e9eb0ce3606eb4800a0f2fa6b66a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48000000000000000000000000000000000000000000000000000016363608761f000000000000000000000000004c453280a06c4eca27a0b86991c6218b36c1d19d4a2e9eb0ce3606eb48111111125421ca6dc452d289314280a0f8842a6500d6f29312", + "sellAmount": "9999998244640204720000", + "sellAmountMinusFees": "9914998259560762979880", + "sellAmountDisplay": "9999998244640204720000", + "sellAmountInEth": "9999998244640204720000", + "buyAmount": "24422090569247", + "buyAmountMinusFees": "24422090569247", + "buyAmountDisplay": "24422090569247", + "buyAmountDisplayMinimum": "23933648757863", + "buyAmountInEth": "9778378741544102912559", + "tradeAmountUSD": 24976495.615725607, + "tradeFeeAmountUSD": 212300.21273366766, + "value": "9999998244640204720000", + "gasPrice": "18867088421", + "source": "1inch", + "protocols": [ + { + "name": "DODO", + "part": 0.3333333333 + }, + { + "name": "MAVERICK_V2", + "part": 3.333333333 + }, + { + "name": "CURVE", + "part": 7.666666667 + }, + { + "name": "UNISWAP_V2", + "part": 3 + }, + { + "name": "SUSHI", + "part": 1 + }, + { + "name": "UNISWAP_V3", + "part": 82.66666667 + }, + { + "name": "CURVE_V2_TRICRYPTO_NG", + "part": 0.3333333333 + }, + { + "name": "PANCAKESWAP_V3", + "part": 1.666666667 + } + ], + "feeTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 212300.21273366766, + "available": true + } + }, + "fee": "84999985079441740120", + "feeInEth": "84999985079441740120", + "feePercentageBasisPoints": "8500000000000000", + "tradeType": "exact_input", + "from": "0xa0Ee7A142d267C1f36714E4a8F75612F20a79720", + "defaultGasLimit": "350000", + "swapType": "normal", + "txTarget": "0x00000000009726632680fb29d3f7a9734e3010e2", + "chainId": 1 +} \ No newline at end of file diff --git a/e2e/responses/_v1_quote_buyToken_0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_eth_slippage_5_sellAmount_100.json b/e2e/responses/_v1_quote_buyToken_0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_eth_slippage_5_sellAmount_100.json new file mode 100644 index 0000000000..934be99a40 --- /dev/null +++ b/e2e/responses/_v1_quote_buyToken_0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_eth_slippage_5_sellAmount_100.json @@ -0,0 +1,182 @@ +{ + "sellTokenAddress": "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE", + "sellTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 2497.65, + "available": true + } + }, + "buyTokenAddress": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "buyTokenAsset": { + "assetCode": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668633499/assets/ethereum/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2.png", + "name": "Wrapped Ether", + "network": "mainnet", + "symbol": "WETH", + "networks": { + "1": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "decimals": 18 + }, + "10": { + "address": "0x4200000000000000000000000000000000000006", + "decimals": 18 + }, + "137": { + "address": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619", + "decimals": 18 + }, + "42161": { + "address": "0x82af49447d8a07e3bd95bd0d56f35241523fbab1", + "decimals": 18 + }, + "43114": { + "address": "0x49d5c2bdffac6ce2bfdb6640f4f80f226bc10bab", + "decimals": 18 + }, + "7777777": { + "address": "0x4200000000000000000000000000000000000006", + "decimals": 18 + }, + "81457": { + "address": "0x4300000000000000000000000000000000000004", + "decimals": 18 + }, + "8453": { + "address": "0x4200000000000000000000000000000000000006", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 2497.65, + "available": true + } + }, + "allowanceTarget": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "allowanceNeeded": false, + "to": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "data": "0x", + "sellAmount": "1000000000000000000", + "sellAmountMinusFees": "1000000000000000000", + "sellAmountDisplay": "1000000000000000000", + "sellAmountInEth": "1000000000000000000", + "buyAmount": "1000000000000000000", + "buyAmountMinusFees": "1000000000000000000", + "buyAmountDisplay": "1000000000000000000", + "buyAmountDisplayMinimum": "1000000000000000000", + "buyAmountInEth": "1000000000000000000", + "tradeAmountUSD": 2497.65, + "tradeFeeAmountUSD": 0, + "value": "0", + "gasPrice": "", + "source": "rainbow", + "protocols": [ + { + "name": "WRAPPED_CONTRACT", + "part": 1 + } + ], + "feeTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 0, + "available": false + }, + "totalPrice": { + "value": 0, + "available": false + } + }, + "fee": "0", + "feeInEth": "0", + "feePercentageBasisPoints": "0", + "tradeType": "exact_input", + "from": "0x70997970c51812dc3a010c7d01b50e0d17dc79c8", + "defaultGasLimit": "31000", + "swapType": "wrap", + "txTarget": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "chainId": 1 +} \ No newline at end of file diff --git a/e2e/responses/_v1_quote_buyToken_0xc18360217d8f7ab5e7c516566761ea12ce7f9d72_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_eth_slippage_5_sellAmount_100.json b/e2e/responses/_v1_quote_buyToken_0xc18360217d8f7ab5e7c516566761ea12ce7f9d72_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_eth_slippage_5_sellAmount_100.json new file mode 100644 index 0000000000..e3697ea600 --- /dev/null +++ b/e2e/responses/_v1_quote_buyToken_0xc18360217d8f7ab5e7c516566761ea12ce7f9d72_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_eth_slippage_5_sellAmount_100.json @@ -0,0 +1,166 @@ +{ + "sellTokenAddress": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", + "sellTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 2497.65, + "available": true + } + }, + "buyTokenAddress": "0xc18360217d8f7ab5e7c516566761ea12ce7f9d72", + "buyTokenAsset": { + "assetCode": "0xc18360217d8f7ab5e7c516566761ea12ce7f9d72", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668486691/assets/ethereum/0xc18360217d8f7ab5e7c516566761ea12ce7f9d72.png", + "name": "Ethereum Name Service", + "network": "mainnet", + "symbol": "ENS", + "networks": { + "1": { + "address": "0xc18360217d8f7ab5e7c516566761ea12ce7f9d72", + "decimals": 18 + }, + "10": { + "address": "0x65559aa14915a70190438ef90104769e5e890a00", + "decimals": 18 + }, + "137": { + "address": "0xbd7a5cf51d22930b8b3df6d834f9bcef90ee7c4f", + "decimals": 18 + }, + "42161": { + "address": "0xfea31d704deb0975da8e77bf13e04239e70d7c28", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 16.009466683298914, + "available": true + }, + "totalPrice": { + "value": 2469.258786176147, + "available": true + } + }, + "allowanceTarget": "0x00000000009726632680fb29d3f7a9734e3010e2", + "allowanceNeeded": false, + "to": "0x111111125421ca6dc452d289314280a0f8842a65", + "data": "0x07ed23790000000000000000000000003451b6b219478037a1ac572706627fc2bda1e812000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000c18360217d8f7ab5e7c516566761ea12ce7f9d720000000000000000000000003451b6b219478037a1ac572706627fc2bda1e81200000000000000000000000000000000009726632680fb29d3f7a9734e3010e20000000000000000000000000000000000000000000000000dc283ff2eccc000000000000000000000000000000000000000000000000007f1734fc1deae73330000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000002a800000000000000000000000000000000000000000000000000028a00001a4041c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2d0e30db05120111111125421ca6dc452d289314280a0f8842a65c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2012456a7586809815a5097906f47992bcf8373ffe6670daf3826f3d58a586e316aa9085c61ab000000000000000000000000807cf9a772d5a3f9cefbc1192e939d62f0d9bd380000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18360217d8f7ab5e7c516566761ea12ce7f9d72000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000085c795e20587784f40000000000000000000000000000000000000000000000000dc283ff2eccc000000000000000000000000000000001abe300671fd97a00000000000000000000000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000000002800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000411995cd1ddceafb1388c20d22307c4d0b7da34f3c4156646df9c295e4345ffd026357b9e26ae66de4c37318b0915b308a72c252822846cd3db320dfd5b73a77cd1c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014111111125421ca6dc452d289314280a0f8842a65000000000000000000000000000000000000000000000000000000000000000000000000d6f29312", + "sellAmount": "1000000000000000000", + "sellAmountMinusFees": "991500000000000000", + "sellAmountDisplay": "1000000000000000000", + "sellAmountInEth": "1000000000000000000", + "buyAmount": "154237416837381554176", + "buyAmountMinusFees": "154237416837381554176", + "buyAmountDisplay": "154237416837381554176", + "buyAmountDisplayMinimum": "146525545995512476468", + "buyAmountInEth": "988632829330029044", + "tradeAmountUSD": 2497.65, + "tradeFeeAmountUSD": 21.230025, + "value": "1000000000000000000", + "gasPrice": "19716032844", + "source": "1inch", + "protocols": [ + { + "name": "PMM15", + "part": 100 + } + ], + "feeTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 21.230025, + "available": true + } + }, + "fee": "8500000000000000", + "feeInEth": "8500000000000000", + "feePercentageBasisPoints": "8500000000000000", + "tradeType": "exact_input", + "from": "0x70997970c51812dc3a010c7d01b50e0d17dc79c8", + "defaultGasLimit": "350000", + "swapType": "normal", + "txTarget": "0x00000000009726632680fb29d3f7a9734e3010e2", + "chainId": 1 +} \ No newline at end of file diff --git a/e2e/responses/_v1_quote_buyToken_eth_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_slippage_5_sellAmount_100.json b/e2e/responses/_v1_quote_buyToken_eth_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_slippage_5_sellAmount_100.json new file mode 100644 index 0000000000..579eef03c5 --- /dev/null +++ b/e2e/responses/_v1_quote_buyToken_eth_chainId_1_currency_USD_enableZoraSwaps_true_fromAddress_0x70997970c51812dc3a010c7d01b50e0d17dc79c8_sellToken_0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_slippage_5_sellAmount_100.json @@ -0,0 +1,186 @@ +{ + "sellTokenAddress": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "sellTokenAsset": { + "assetCode": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668633499/assets/ethereum/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2.png", + "name": "Wrapped Ether", + "network": "mainnet", + "symbol": "WETH", + "networks": { + "1": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "decimals": 18 + }, + "10": { + "address": "0x4200000000000000000000000000000000000006", + "decimals": 18 + }, + "137": { + "address": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619", + "decimals": 18 + }, + "42161": { + "address": "0x82af49447d8a07e3bd95bd0d56f35241523fbab1", + "decimals": 18 + }, + "43114": { + "address": "0x49d5c2bdffac6ce2bfdb6640f4f80f226bc10bab", + "decimals": 18 + }, + "7777777": { + "address": "0x4200000000000000000000000000000000000006", + "decimals": 18 + }, + "81457": { + "address": "0x4300000000000000000000000000000000000004", + "decimals": 18 + }, + "8453": { + "address": "0x4200000000000000000000000000000000000006", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 249.76500000000001, + "available": true + } + }, + "buyTokenAddress": "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE", + "buyTokenAsset": { + "assetCode": "eth", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668565116/assets/ethereum/eth.png", + "name": "Ethereum", + "network": "mainnet", + "symbol": "ETH", + "networks": { + "1": { + "address": "eth", + "decimals": 18 + }, + "10": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "42161": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "56": { + "address": "0x2170ed0880ac9a755fd29b2688956bd959f933f8", + "decimals": 18 + }, + "7777777": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "81457": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + }, + "8453": { + "address": "0x0000000000000000000000000000000000000000", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 2497.65, + "available": true + }, + "totalPrice": { + "value": 249.76500000000001, + "available": true + } + }, + "allowanceTarget": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "allowanceNeeded": false, + "to": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "data": "0x", + "sellAmount": "100000000000000000", + "sellAmountMinusFees": "100000000000000000", + "sellAmountDisplay": "100000000000000000", + "sellAmountInEth": "100000000000000000", + "buyAmount": "100000000000000000", + "buyAmountMinusFees": "100000000000000000", + "buyAmountDisplay": "100000000000000000", + "buyAmountDisplayMinimum": "100000000000000000", + "buyAmountInEth": "100000000000000000", + "tradeAmountUSD": 249.76500000000001, + "tradeFeeAmountUSD": 0, + "value": "0", + "gasPrice": "", + "source": "rainbow", + "protocols": [ + { + "name": "WRAPPED_CONTRACT", + "part": 1 + } + ], + "feeTokenAsset": { + "assetCode": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "decimals": 18, + "iconUrl": "https://rainbowme-res.cloudinary.com/image/upload/v1668633499/assets/ethereum/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2.png", + "name": "Wrapped Ether", + "network": "mainnet", + "symbol": "WETH", + "networks": { + "1": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "decimals": 18 + }, + "10": { + "address": "0x4200000000000000000000000000000000000006", + "decimals": 18 + }, + "137": { + "address": "0x7ceb23fd6bc0add59e62ac25578270cff1b9f619", + "decimals": 18 + }, + "42161": { + "address": "0x82af49447d8a07e3bd95bd0d56f35241523fbab1", + "decimals": 18 + }, + "43114": { + "address": "0x49d5c2bdffac6ce2bfdb6640f4f80f226bc10bab", + "decimals": 18 + }, + "7777777": { + "address": "0x4200000000000000000000000000000000000006", + "decimals": 18 + }, + "81457": { + "address": "0x4300000000000000000000000000000000000004", + "decimals": 18 + }, + "8453": { + "address": "0x4200000000000000000000000000000000000006", + "decimals": 18 + } + }, + "chainId": 1, + "price": { + "value": 0, + "available": false + }, + "totalPrice": { + "value": 0, + "available": false + } + }, + "fee": "0", + "feeInEth": "0", + "feePercentageBasisPoints": "0", + "tradeType": "exact_input", + "from": "0x70997970c51812dc3a010c7d01b50e0d17dc79c8", + "defaultGasLimit": "40000", + "swapType": "unwrap", + "txTarget": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "chainId": 1 +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x0000000000000000000000000000000000001010_chainId_1_sellToken_eth_toChainId_137_sellAmount_10000.json b/e2e/responses/_v1_slippage_buyToken_0x0000000000000000000000000000000000001010_chainId_1_sellToken_eth_toChainId_137_sellAmount_10000.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x0000000000000000000000000000000000001010_chainId_1_sellToken_eth_toChainId_137_sellAmount_10000.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.01530994.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.01530994.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.01530994.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.01533215.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.01533215.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.01533215.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.01535875.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.01535875.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.01535875.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03691288.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03691288.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03691288.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03693362.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03693362.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03693362.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03694857.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03694857.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03694857.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03699737.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03699737.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03699737.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03699952.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03699952.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03699952.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03708068.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03708068.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_buyAmount_0.03708068.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.000611927694623603.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.000611927694623603.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.000611927694623603.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_1.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_1.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_1.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_10.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_10.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_10.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_100.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_100.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_100.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_1000.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_1000.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_1000.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_10000.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_10000.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_10000.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_100000.000611927694623603.json b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_100000.000611927694623603.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_chainId_1_sellToken_eth_toChainId_1_sellAmount_100000.000611927694623603.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x4200000000000000000000000000000000000042_chainId_1_sellToken_eth_toChainId_10_sellAmount_10000.json b/e2e/responses/_v1_slippage_buyToken_0x4200000000000000000000000000000000000042_chainId_1_sellToken_eth_toChainId_10_sellAmount_10000.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x4200000000000000000000000000000000000042_chainId_1_sellToken_eth_toChainId_10_sellAmount_10000.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0x4200000000000000000000000000000000000042_chainId_1_sellToken_undefined_toChainId_10.json b/e2e/responses/_v1_slippage_buyToken_0x4200000000000000000000000000000000000042_chainId_1_sellToken_undefined_toChainId_10.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0x4200000000000000000000000000000000000042_chainId_1_sellToken_undefined_toChainId_10.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_buyAmount_5.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_buyAmount_5.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_buyAmount_5.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_buyAmount_50.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_buyAmount_50.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_buyAmount_50.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.00000000000000996.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.00000000000000996.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.00000000000000996.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.000611927694623603.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.000611927694623603.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.000611927694623603.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_1.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_1.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_1.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_10000.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_10000.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_10000.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_100000.000611927694623603.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_100000.000611927694623603.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_100000.000611927694623603.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.98282315104360369.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.98282315104360369.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.98282315104360369.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.98413773592540869.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.98413773592540869.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.98413773592540869.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.984138834155356203.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.984138834155356203.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.984138834155356203.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.98800387650866709.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.98800387650866709.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.98800387650866709.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.989297384621033178.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.989297384621033178.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.989297384621033178.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.98930012016568709.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.98930012016568709.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.98930012016568709.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99490851729159649.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99490851729159649.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99490851729159649.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.996475296478968045.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.996475296478968045.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.996475296478968045.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99647823966471149.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99647823966471149.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99647823966471149.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.007995062950057592.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.007995062950057592.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.007995062950057592.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.013234332130657592.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.013234332130657592.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.013234332130657592.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99815439038402.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99815439038402.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99815439038402.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99824464020472.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99824464020472.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99824464020472.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99829371384687.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99829371384687.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99829371384687.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.998325952559545.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.998325952559545.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.998325952559545.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.9983588772921.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.9983588772921.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.9983588772921.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.998836852429675.json b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.998836852429675.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.998836852429675.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xbf5140a22578168fd562dccf235e5d43a02ce9b1_chainId_1_sellToken_eth_toChainId_56_sellAmount_10000.json b/e2e/responses/_v1_slippage_buyToken_0xbf5140a22578168fd562dccf235e5d43a02ce9b1_chainId_1_sellToken_eth_toChainId_56_sellAmount_10000.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xbf5140a22578168fd562dccf235e5d43a02ce9b1_chainId_1_sellToken_eth_toChainId_56_sellAmount_10000.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_10_sellToken_0x4200000000000000000000000000000000000042_toChainId_42161.json b/e2e/responses/_v1_slippage_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_10_sellToken_0x4200000000000000000000000000000000000042_toChainId_42161.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_10_sellToken_0x4200000000000000000000000000000000000042_toChainId_42161.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_10_sellToken_0x4200000000000000000000000000000000000042_toChainId_42161_sellAmount_1.json b/e2e/responses/_v1_slippage_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_10_sellToken_0x4200000000000000000000000000000000000042_toChainId_42161_sellAmount_1.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_10_sellToken_0x4200000000000000000000000000000000000042_toChainId_42161_sellAmount_1.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_1_sellToken_eth_toChainId_42161_sellAmount_10000.json b/e2e/responses/_v1_slippage_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_1_sellToken_eth_toChainId_42161_sellAmount_10000.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_1_sellToken_eth_toChainId_42161_sellAmount_10000.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_1_sellToken_undefined_toChainId_42161.json b/e2e/responses/_v1_slippage_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_1_sellToken_undefined_toChainId_42161.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_1_sellToken_undefined_toChainId_42161.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_10_sellToken_0x4200000000000000000000000000000000000042_toChainId_1.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_10_sellToken_0x4200000000000000000000000000000000000042_toChainId_1.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_10_sellToken_0x4200000000000000000000000000000000000042_toChainId_1.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_buyAmount_1.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_buyAmount_1.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_buyAmount_1.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.03793298.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.03793298.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.03793298.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.03799746.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.03799746.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.03799746.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.0380476.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.0380476.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.0380476.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.03805202.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.03805202.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.03805202.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.0381087.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.0381087.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_0.0381087.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_10000000000.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_10000000000.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_10000000000.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_1000000006119276.94623603.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_1000000006119276.94623603.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_1000000006119276.94623603.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_6119276.94623603.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_6119276.94623603.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0x2260fac5e5542a773aa44fbcfedf7c193bc2c599_toChainId_1_sellAmount_6119276.94623603.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_2490.984407.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_2490.984407.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_2490.984407.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_2500.885809.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_2500.885809.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_2500.885809.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_2508.601845s.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_2508.601845s.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_2508.601845s.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_2510.657864.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_2510.657864.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_2510.657864.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_5.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_5.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_5.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_50.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_50.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48_toChainId_1_sellAmount_50.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_undefined_toChainId_1_buyAmount_10000.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_undefined_toChainId_1_buyAmount_10000.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_undefined_toChainId_1_buyAmount_10000.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_undefined_toChainId_1_buyAmount_9996.98413773592540869.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_undefined_toChainId_1_buyAmount_9996.98413773592540869.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_undefined_toChainId_1_buyAmount_9996.98413773592540869.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_undefined_toChainId_1_buyAmount_9997.98930012016568709.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_undefined_toChainId_1_buyAmount_9997.98930012016568709.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_undefined_toChainId_1_buyAmount_9997.98930012016568709.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_undefined_toChainId_1_buyAmount_9998.99647823966471149.json b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_undefined_toChainId_1_buyAmount_9998.99647823966471149.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_eth_chainId_1_sellToken_undefined_toChainId_1_buyAmount_9998.99647823966471149.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_10_sellToken_0x4200000000000000000000000000000000000042_toChainId_1.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_10_sellToken_0x4200000000000000000000000000000000000042_toChainId_1.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_10_sellToken_0x4200000000000000000000000000000000000042_toChainId_1.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.00000000000000996.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.00000000000000996.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.00000000000000996.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.000611927694623603.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.000611927694623603.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_0.000611927694623603.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_10000.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_10000.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_10000.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_100000.000611927694623603.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_100000.000611927694623603.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_100000.000611927694623603.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.98282315104360369.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.98282315104360369.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.98282315104360369.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.98413773592540869.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.98413773592540869.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9996.98413773592540869.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.98800387650866709.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.98800387650866709.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.98800387650866709.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.98930012016568709.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.98930012016568709.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9997.98930012016568709.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99179708219475168.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99179708219475168.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99179708219475168.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99263622658738006.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99263622658738006.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99263622658738006.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.992850717515502892.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.992850717515502892.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.992850717515502892.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99490851729159649.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99490851729159649.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99490851729159649.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99647823966471149.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99647823966471149.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.99647823966471149.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.997006106694155433.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.997006106694155433.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9998.997006106694155433.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.007995062950057592.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.007995062950057592.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.007995062950057592.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.013234332130657592.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.013234332130657592.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.013234332130657592.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99815439038402.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99815439038402.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99815439038402.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99824464020472.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99824464020472.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99824464020472.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99829371384687.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99829371384687.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.99829371384687.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.998325952559545.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.998325952559545.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.998325952559545.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.9983588772921.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.9983588772921.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.9983588772921.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.998836852429675.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.998836852429675.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_eth_toChainId_1_sellAmount_9999.998836852429675.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_undefined_toChainId_1.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_undefined_toChainId_1.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_undefined_toChainId_1.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_undefined_toChainId_1_sellAmount_0.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_undefined_toChainId_1_sellAmount_0.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_1_sellToken_undefined_toChainId_1_sellAmount_0.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_42161_sellToken_0x0000000000000000000000000000000000000000_toChainId_1.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_42161_sellToken_0x0000000000000000000000000000000000000000_toChainId_1.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_42161_sellToken_0x0000000000000000000000000000000000000000_toChainId_1.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/_v1_slippage_buyToken_undefined_chainId_42161_sellToken_0x0000000000000000000000000000000000000000_toChainId_1_sellAmount_0.00000015033.json b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_42161_sellToken_0x0000000000000000000000000000000000000000_toChainId_1_sellAmount_0.00000015033.json new file mode 100644 index 0000000000..b0e236170d --- /dev/null +++ b/e2e/responses/_v1_slippage_buyToken_undefined_chainId_42161_sellToken_0x0000000000000000000000000000000000000000_toChainId_1_sellAmount_0.00000015033.json @@ -0,0 +1,5 @@ +{ + "data": { + "slippagePercent": 2 + } +} \ No newline at end of file diff --git a/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0x4200000000000000000000000000000000000042_chainId_1_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_10000000000000000000.json b/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0x4200000000000000000000000000000000000042_chainId_1_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_10000000000000000000.json new file mode 100644 index 0000000000..bef84952e5 --- /dev/null +++ b/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0x4200000000000000000000000000000000000042_chainId_1_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_10000000000000000000.json @@ -0,0 +1,5 @@ +{ + "error": "500 Server Error: Internal Server Error for url: https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0x4200000000000000000000000000000000000042&chainId=1¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=10000000000000000000000&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&toChainId=10", + "url": "https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0x4200000000000000000000000000000000000042&chainId=1¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=10000000000000000000000&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&toChainId=10", + "details": "{\"error\":true,\"message\":\"both socket and relay quote requests failed\"}" +} \ No newline at end of file diff --git a/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE_chainId_1_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_10000000000000000000.json b/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE_chainId_1_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_10000000000000000000.json new file mode 100644 index 0000000000..de09fbcfeb --- /dev/null +++ b/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE_chainId_1_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_10000000000000000000.json @@ -0,0 +1,5 @@ +{ + "error": "500 Server Error: Internal Server Error for url: https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=10000000000000000000000&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&toChainId=137", + "url": "https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=10000000000000000000000&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&toChainId=137", + "details": "{\"error\":true,\"message\":\"both socket and relay quote requests failed\"}" +} \ No newline at end of file diff --git a/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0xbf5140a22578168fd562dccf235e5d43a02ce9b1_chainId_1_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_10000000000000000000.json b/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0xbf5140a22578168fd562dccf235e5d43a02ce9b1_chainId_1_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_10000000000000000000.json new file mode 100644 index 0000000000..f04962be2e --- /dev/null +++ b/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0xbf5140a22578168fd562dccf235e5d43a02ce9b1_chainId_1_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_10000000000000000000.json @@ -0,0 +1,5 @@ +{ + "error": "500 Server Error: Internal Server Error for url: https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0xbf5140a22578168fd562dccf235e5d43a02ce9b1&chainId=1¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=10000000000000000000000&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&toChainId=56", + "url": "https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0xbf5140a22578168fd562dccf235e5d43a02ce9b1&chainId=1¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=10000000000000000000000&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&toChainId=56", + "details": "{\"error\":true,\"message\":\"both socket and relay quote requests failed\"}" +} \ No newline at end of file diff --git a/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_10_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_1000000000000000000.json b/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_10_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_1000000000000000000.json new file mode 100644 index 0000000000..62dba11b7c --- /dev/null +++ b/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_10_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_1000000000000000000.json @@ -0,0 +1,5 @@ +{ + "error": "400 Client Error: Bad Request for url: https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a&chainId=10¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=1000000000000000000&sellToken=0x4200000000000000000000000000000000000042&slippage=2&toChainId=42161", + "url": "https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a&chainId=10¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=1000000000000000000&sellToken=0x4200000000000000000000000000000000000042&slippage=2&toChainId=42161", + "details": "{\"error\":true,\"error_code\":504,\"message\":\"no routes found\"}" +} \ No newline at end of file diff --git a/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_1_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_10000000000000000000.json b/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_1_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_10000000000000000000.json new file mode 100644 index 0000000000..7caaebe3e7 --- /dev/null +++ b/e2e/responses/error__v1_quote_bridgeVersion_4_buyToken_0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a_chainId_1_currency_USD_fromAddress_0xa0Ee7A142d267C1f36714E4a8F75612F20a79720_refuel_false_sellAmount_10000000000000000000.json @@ -0,0 +1,5 @@ +{ + "error": "500 Server Error: Internal Server Error for url: https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a&chainId=1¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=10000000000000000000000&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&toChainId=42161", + "url": "https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a&chainId=1¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=10000000000000000000000&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&toChainId=42161", + "details": "{\"error\":true,\"message\":\"both socket and relay quote requests failed\"}" +} \ No newline at end of file diff --git a/e2e/serial/swap/1_swapFlow1.test.ts b/e2e/serial/swap/1_swapFlow1.test.ts index e74a2cc6a6..ea8526552b 100644 --- a/e2e/serial/swap/1_swapFlow1.test.ts +++ b/e2e/serial/swap/1_swapFlow1.test.ts @@ -755,16 +755,28 @@ it('should be able to see no route explainer', async () => { id: 'swap-confirmation-button-error', driver, }); - expect(confirmButtonText).toEqual('No route found'); + + // TODO: Fix no quote instead of no route for some reason ?? + expect(['No route found', 'No quote available']).toContain(confirmButtonText); await findElementByTestIdAndClick({ id: 'swap-confirmation-button-error', driver, }); - const noRouteExplainer = await findElementByTestId({ - id: 'explainer-sheet-swap-no-route', - driver, - }); - expect(noRouteExplainer).toBeTruthy(); + + try { + const noRouteExplainer = await findElementByTestId({ + id: 'explainer-sheet-swap-no-route', + driver, + }); + expect(noRouteExplainer).toBeTruthy(); + } catch { + const noQuoteExplainer = await findElementByTestId({ + id: 'explainer-sheet-swap-no-quote', + driver, + }); + expect(noQuoteExplainer).toBeTruthy(); + } + await findElementByTestIdAndClick({ id: 'explainer-action-button', driver, @@ -852,6 +864,11 @@ it('should be able to go to review a swap', async () => { id: `${SWAP_VARIABLES.ETH_MAINNET_ID}-token-to-sell-swap-token-input-swap-input-mask`, driver, }); + await delay(10_000); + + // last test is currently failing bc of insufficent eth + // this clear input and type isn't working for some reason + // the input is cleared, the output doesn't update then the input repopulates await clearInput({ id: `${SWAP_VARIABLES.ETH_MAINNET_ID}-token-to-sell-swap-token-input-swap-input-mask`, driver, @@ -861,6 +878,7 @@ it('should be able to go to review a swap', async () => { text: 1, driver, }); + await delay(30_000); await findElementByTestIdAndClick({ id: 'swap-confirmation-button-ready', driver, @@ -1019,7 +1037,7 @@ it('should be able to execute swap', async () => { await findElementByTestIdAndClick({ id: 'swap-review-execute', driver }); // waiting for balances to update / swap to execute - await delay(20_000); + await delay(25_000); const ethBalanceAfterSwap = await provider.getBalance(WALLET_TO_USE_ADDRESS); diff --git a/e2e/serial/swap/TEST/script.py b/e2e/serial/swap/TEST/script.py new file mode 100755 index 0000000000..0f39cef0ed --- /dev/null +++ b/e2e/serial/swap/TEST/script.py @@ -0,0 +1,78 @@ +#!/usr/bin/env python3 +import requests +import json +import os +import time +from urllib.parse import urlparse, parse_qs, urlencode + +def read_urls(filename): + with open(filename, 'r') as file: + return [line.strip() for line in file if line.strip()] + +def encode_url(url): + # First, replace any potential HTML entities + url = url.replace('&', '&') + + # Parse the URL + parsed = urlparse(url) + + # Parse and encode the query parameters + query_params = parse_qs(parsed.query) + encoded_query = urlencode(query_params, doseq=True) + + # Reconstruct the URL + encoded_url = f"{parsed.scheme}://{parsed.netloc}{parsed.path}?{encoded_query}" + + return encoded_url + +def fetch_json(url, max_retries=3): + encoded_url = encode_url(url) + for attempt in range(max_retries): + try: + response = requests.get(encoded_url) + response.raise_for_status() + return response.json() + except requests.exceptions.RequestException as e: + if attempt == max_retries - 1: + raise + print(f"Attempt {attempt + 1} failed. Retrying in {2 ** attempt} seconds...") + time.sleep(2 ** attempt) + +def save_json(data, filename): + with open(filename, 'w') as file: + json.dump(data, file, indent=2) + +def create_filename(url): + url = url.replace('&', '&') + + parsed_url = urlparse(url) + query_params = parse_qs(parsed_url.query) + filename = f"{parsed_url.path.replace('/', '_')}" + for key, value in query_params.items(): + filename += f"_{key}_{value[0]}" + return filename[:200] + ".json" + +def main(): + urls = read_urls('urls.txt') + + if not os.path.exists('responses'): + os.makedirs('responses') + + for url in urls: + try: + data = fetch_json(url) + filename = create_filename(url) + save_json(data, os.path.join('responses', filename)) + print(f"Successfully saved response for: {url}") + except Exception as e: + print(f"Error processing {url}: {str(e)}") + error_data = { + "error": str(e), + "url": url, + "details": getattr(e, 'response', {}).text if hasattr(e, 'response') else None + } + error_filename = f"error_{create_filename(url)}" + save_json(error_data, os.path.join('responses', error_filename)) + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/e2e/serial/swap/TEST/urls.txt b/e2e/serial/swap/TEST/urls.txt new file mode 100644 index 0000000000..b72f3e8677 --- /dev/null +++ b/e2e/serial/swap/TEST/urls.txt @@ -0,0 +1,167 @@ +https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0xff970a61a04b1ca14834a43f5de4533ebddb5cc8&chainId=1¤cy=USD&fromAddress=0x3c44cdddb6a900fa2b585dd299e03d12fa4293bc&refuel=false&sellAmount=1000000000000000000&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=5&toChainId=42161 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9999007995062950057592 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=undefined&toChainId=1&buyAmount= +https://swap.p.rainbow.me/v1/quote?buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&slippage=2&sellAmount=50000000 +https://swap.p.rainbow.me/v1/quote?buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&slippage=1&sellAmount=50000000 +https://swap.p.rainbow.me/v1/quote?buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&slippage=1&sellAmount=2510657864 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=1 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=1000000000000000000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a&chainId=1&sellToken=undefined&toChainId=42161&buyAmount= +https://swap.p.rainbow.me/v1/slippage?buyToken=0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a&chainId=10&sellToken=0x4200000000000000000000000000000000000042&toChainId=42161&buyAmount= +https://swap.p.rainbow.me/v1/slippage?buyToken=0x0000000000000000000000000000000000001010&chainId=1&sellToken=eth&toChainId=137&sellAmount=10000 +https://swap.p.rainbow.me/v1/quote?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=1000000000000000000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&sellAmount=10000 +https://swap.p.rainbow.me/v1/quote?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=611927694623603 +https://swap.p.rainbow.me/v1/quote?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=100000000000000000000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&sellAmount=1 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&toChainId=1&buyAmount=1 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9996982823151043603690 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&buyAmount=0.01533215 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9996.984138834155356203 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9997989300120165687090 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=2&sellAmount=9998994908517291596490 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9998.99490851729159649 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9998996475296478968045 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9998.996475296478968045 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9998.99647823966471149 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=undefined&toChainId=1&buyAmount=9998.99647823966471149 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&toChainId=1&sellAmount=0.03805202 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&buyAmount=0.03699952 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=100000.000611927694623603 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=100000000611927694623603 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=2&sellAmount=9999998358877292100000 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&toChainId=1&sellAmount=2490.984407 +https://swap.p.rainbow.me/v1/quote?buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&slippage=2&sellAmount=2490984407 +https://swap.p.rainbow.me/v1/quote?buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&slippage=1&sellAmount=2490984407 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&buyAmount=0.03691288 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&toChainId=1&sellAmount=0.03793298 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9998.99263622658738006 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.99824464020472 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&buyAmount=0.03694857 +https://swap.p.rainbow.me/v1/quote?buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&slippage=2&sellAmount=2508601845 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9998.992850717515502892 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9999998293713846870000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.99829371384687 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.99829371384687 +https://swap.p.rainbow.me/v1/quote?buyToken=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0x70997970c51812dc3a010c7d01b50e0d17dc79c8&sellToken=eth&slippage=5&sellAmount=1000000000000000000 +https://swap.p.rainbow.me/v1/quote?buyToken=eth&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0x70997970c51812dc3a010c7d01b50e0d17dc79c8&sellToken=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&slippage=5&sellAmount=100000000000000000 +https://swap.p.rainbow.me/v1/quote?buyToken=0xc18360217d8f7ab5e7c516566761ea12ce7f9d72&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0x70997970c51812dc3a010c7d01b50e0d17dc79c8&sellToken=eth&slippage=5&sellAmount=1000000000000000000 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0x70997970c51812dc3a010c7d01b50e0d17dc79c8&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=5&sellAmount=1000000000000000000 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=2&buyAmount=50000000 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=2&sellAmount=9999007995062950057592 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9999013234332130657592 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9960 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=42161&sellToken=0x0000000000000000000000000000000000000000&toChainId=1&sellAmount=0.00000015033 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=42161&sellToken=0x0000000000000000000000000000000000000000&toChainId=1&buyAmount= +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&toChainId=1&sellAmount=5 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=2&sellAmount=1000000000000000000 +https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0x4200000000000000000000000000000000000042&chainId=1¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=10000000000000000000000&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&toChainId=10 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xbf5140a22578168fd562dccf235e5d43a02ce9b1&chainId=1&sellToken=eth&toChainId=56&sellAmount=10000 +https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=10000000000000000000000&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&toChainId=137 +https://swap.p.rainbow.me/v1/quote?buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&slippage=1&buyAmount=1000000000000000000 +https://swap.p.rainbow.me/v1/quote?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=10000000000000000000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&sellAmount=1000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=0.000611927694623603 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=611927694623603 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=10000000000000000000000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9996.98413773592540869 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9997988003876508667090 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&buyAmount=0.01535875 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9997989297384621033178 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9997.989297384621033178 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&sellAmount=100000.000611927694623603 +https://swap.p.rainbow.me/v1/quote?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=100000000611927694623603 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9999998358877292100000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.9983588772921 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&buyAmount=0.03699737 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&toChainId=1&sellAmount=0.0380476 +https://swap.p.rainbow.me/v1/quote?buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&slippage=1&sellAmount=2500885809 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&buyAmount=0.03693362 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0x70997970c51812dc3a010c7d01b50e0d17dc79c8&sellToken=0xc18360217d8f7ab5e7c516566761ea12ce7f9d72&slippage=5&sellAmount=1000000000000000000 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&buyAmount=50000000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&buyAmount=50 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&buyAmount=5 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.007995062950057592 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=2&sellAmount=9960 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.013234332130657592 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=0.00000000000000996 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&toChainId=1&sellAmount=50 +https://swap.p.rainbow.me/v1/quote?buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&slippage=99&sellAmount=50000000 +https://swap.p.rainbow.me/v1/quote?buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&slippage=2&sellAmount=2510657864 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=99&sellAmount=1000000000000000000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.998836852429675 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x4200000000000000000000000000000000000042&chainId=1&sellToken=undefined&toChainId=10&buyAmount= +https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a&chainId=10¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=1000000000000000000&sellToken=0x4200000000000000000000000000000000000042&slippage=2&toChainId=42161 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=10&sellToken=0x4200000000000000000000000000000000000042&toChainId=1&buyAmount= +https://swap.p.rainbow.me/v1/slippage?buyToken=0x4200000000000000000000000000000000000042&chainId=1&sellToken=eth&toChainId=10&sellAmount=10000 +https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a&chainId=1¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=10000000000000000000000&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&toChainId=42161 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a&chainId=1&sellToken=eth&toChainId=42161&sellAmount=10000 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=10000 +https://swap.p.rainbow.me/v1/quote?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=10000000000000000000000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&buyAmount=0.01530994 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&sellAmount=10 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&sellAmount=100 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&sellAmount=0.000611927694623603 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=0.000611927694623603 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=10000 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=undefined&toChainId=1&buyAmount=10000 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=undefined&toChainId=1&sellAmount=0 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=2&sellAmount=9996982823151043603690 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9996.98282315104360369 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9996984138834155356203 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=undefined&toChainId=1&buyAmount=9996.98413773592540869 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9996.98413773592540869 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9997.98800387650866709 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=undefined&toChainId=1&buyAmount=9997.98930012016568709 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9997.98930012016568709 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9998.99490851729159649 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&toChainId=1&sellAmount=10000000000 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&toChainId=1&sellAmount=0.0381087 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9998996478239664711490 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9998.99647823966471149 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9999998325952559545000 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=2&sellAmount=9999998325952559545000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.998325952559545 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.998325952559545 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.9983588772921 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9999998154390384020000 +https://swap.p.rainbow.me/v1/quote?buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&slippage=2&sellAmount=2500885809 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9999998244640204720000 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&toChainId=1&sellAmount=0.03799746 +https://swap.p.rainbow.me/v1/quote?buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&slippage=1&sellAmount=2508601845 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=2&sellAmount=9999998293713846870000 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&buyAmount=5000000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.007995062950057592 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.013234332130657592 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=2&sellAmount=9999013234332130657592 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&buyAmount= +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=0.00000000000000996 +https://swap.p.rainbow.me/v1/quote?buyToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&slippage=1&sellAmount=5000000 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&toChainId=1&sellAmount=2510.657864 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&toChainId=1&buyAmount= +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9998.997006106694155433 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9999998836852429675000 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=2&sellAmount=9999998836852429675000 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.998836852429675 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xfc5a1a6eb076a2c7ad06ed22c90d7e710e35ad0a&chainId=10&sellToken=0x4200000000000000000000000000000000000042&toChainId=42161&sellAmount=1 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=10&sellToken=0x4200000000000000000000000000000000000042&toChainId=1&buyAmount= +https://swap.p.rainbow.me/v1/quote?bridgeVersion=4&buyToken=0xbf5140a22578168fd562dccf235e5d43a02ce9b1&chainId=1¤cy=USD&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&refuel=false&sellAmount=10000000000000000000000&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&toChainId=56 +https://swap.p.rainbow.me/v1/quote?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=1000000000000000000000 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&toChainId=1&sellAmount=6119276.94623603 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9996.98282315104360369 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9996984137735925408690 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=2&sellAmount=9997988003876508667090 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9997.98800387650866709 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9997.98930012016568709 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=1&sellAmount=9998994908517291596490 +https://swap.p.rainbow.me/v1/slippage?buyToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&chainId=1&sellToken=eth&toChainId=1&buyAmount=0.03708068 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0x2260fac5e5542a773aa44fbcfedf7c193bc2c599&toChainId=1&sellAmount=1000000006119276.94623603 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=100000.000611927694623603 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9998.99179708219475168 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=2&sellAmount=9999998154390384020000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.99815439038402 +https://swap.p.rainbow.me/v1/slippage?buyToken=undefined&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.99815439038402 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&toChainId=1&sellAmount=2500.885809 +https://swap.p.rainbow.me/v1/quote?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1¤cy=USD&enableZoraSwaps=true&fromAddress=0xa0Ee7A142d267C1f36714E4a8F75612F20a79720&sellToken=0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE&slippage=2&sellAmount=9999998244640204720000 +https://swap.p.rainbow.me/v1/slippage?buyToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&chainId=1&sellToken=eth&toChainId=1&sellAmount=9999.99824464020472 +https://swap.p.rainbow.me/v1/slippage?buyToken=eth&chainId=1&sellToken=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48&toChainId=1&sellAmount=2508.601845s \ No newline at end of file diff --git a/e2e/serial/vitest.config.ts b/e2e/serial/vitest.config.ts index d9e2cb9d54..34a0a151cf 100644 --- a/e2e/serial/vitest.config.ts +++ b/e2e/serial/vitest.config.ts @@ -1,3 +1,5 @@ +import path from 'path'; + import { UserConfig, mergeConfig } from 'vite'; import { defineConfig } from 'vitest/config'; @@ -7,7 +9,8 @@ export default mergeConfig( viteConfig, defineConfig({ test: { - threads: false, + isolate: false, + fileParallelism: false, bail: 1, sequence: { shuffle: false, @@ -20,6 +23,7 @@ export default mergeConfig( } }, }, + setupFiles: [path.resolve(__dirname, '../setup.ts')], }, }) as UserConfig, ); diff --git a/e2e/setup.ts b/e2e/setup.ts new file mode 100644 index 0000000000..323bd46f48 --- /dev/null +++ b/e2e/setup.ts @@ -0,0 +1,33 @@ +import { afterAll, beforeAll } from 'vitest'; + +import { startMockServer } from './mockServer.js'; + +let mockServer: Awaited>; + +beforeAll(async () => { + try { + mockServer = await startMockServer(); + console.log('Mock server started successfully'); + } catch (e) { + console.error(`Error setting up test server: ${e}`); + throw new Error('Failed to start mock server'); + } +}); + +afterAll(() => { + return new Promise((resolve, reject) => { + if (mockServer) { + mockServer.close((err) => { + if (err) { + console.error('Error shutting down the mock server:', err); + reject(err); + } else { + console.log('Mock server closed successfully'); + resolve(); + } + }); + } else { + resolve(); + } + }); +}); diff --git a/lavamoat/build-webpack/policy.json b/lavamoat/build-webpack/policy.json index 62c1ff7c44..e4eedd29d3 100644 --- a/lavamoat/build-webpack/policy.json +++ b/lavamoat/build-webpack/policy.json @@ -12,7 +12,7 @@ "@testing-library/react>@testing-library/dom>@babel/code-frame>@babel/highlight": { "packages": { "@testing-library/react>@testing-library/dom>@babel/code-frame>@babel/highlight>chalk": true, - "jest>@jest/core>jest-snapshot>@babel/types>@babel/helper-validator-identifier": true, + "lavamoat>@babel/highlight>@babel/helper-validator-identifier": true, "react>loose-envify>js-tokens": true } }, @@ -288,14 +288,39 @@ "path.sep": true }, "packages": { + "copy-webpack-plugin>fast-glob": true, "copy-webpack-plugin>glob-parent": true, "copy-webpack-plugin>globby": true, "copy-webpack-plugin>schema-utils": true, "copy-webpack-plugin>serialize-javascript": true, - "globby>fast-glob": true, "lint-staged>normalize-path": true } }, + "copy-webpack-plugin>fast-glob": { + "builtin": { + "fs.lstat": true, + "fs.lstatSync": true, + "fs.readdir": true, + "fs.readdirSync": true, + "fs.stat": true, + "fs.statSync": true, + "os.cpus": true, + "path.basename": true, + "path.resolve": true, + "stream.PassThrough": true, + "stream.Readable": true + }, + "globals": { + "process.cwd": true + }, + "packages": { + "eslint>@nodelib/fs.walk": true, + "globby>fast-glob>@nodelib/fs.stat": true, + "globby>fast-glob>merge2": true, + "msw>chokidar>glob-parent": true, + "ts-loader>micromatch": true + } + }, "copy-webpack-plugin>glob-parent": { "builtin": { "os.platform": true, @@ -323,12 +348,32 @@ "process.cwd": true }, "packages": { + "copy-webpack-plugin>fast-glob": true, + "copy-webpack-plugin>globby>array-union": true, + "copy-webpack-plugin>globby>dir-glob": true, "eslint>ignore": true, - "globby>array-union": true, - "globby>dir-glob": true, - "globby>fast-glob": true, - "globby>merge2": true, - "globby>slash": true + "globby>fast-glob>merge2": true, + "jest>@jest/core>slash": true + } + }, + "copy-webpack-plugin>globby>dir-glob": { + "builtin": { + "path.extname": true, + "path.isAbsolute": true, + "path.join": true, + "path.posix.join": true + }, + "globals": { + "process.cwd": true + }, + "packages": { + "copy-webpack-plugin>globby>dir-glob>path-type": true + } + }, + "copy-webpack-plugin>globby>dir-glob>path-type": { + "builtin": { + "fs": true, + "util.promisify": true } }, "copy-webpack-plugin>schema-utils": { @@ -414,8 +459,8 @@ }, "packages": { "css-loader>postcss>nanoid": true, - "css-loader>postcss>source-map-js": true, - "vitest>picocolors": true + "css-loader>postcss>picocolors": true, + "css-loader>postcss>source-map-js": true } }, "css-loader>postcss-modules-local-by-default": { @@ -441,6 +486,16 @@ "css-loader>icss-utils": true } }, + "css-loader>postcss>picocolors": { + "builtin": { + "tty.isatty": true + }, + "globals": { + "process.argv.includes": true, + "process.env": true, + "process.platform": true + } + }, "dotenv-webpack": { "builtin": { "fs": true @@ -617,7 +672,7 @@ "eslint-config-rainbow>eslint-import-resolver-babel-module>@babel/core>@babel/helper-module-transforms>@babel/traverse": true, "eslint-config-rainbow>eslint-import-resolver-babel-module>@babel/core>@babel/template": true, "jest>@jest/core>jest-snapshot>@babel/types": true, - "jest>@jest/core>jest-snapshot>@babel/types>@babel/helper-validator-identifier": true + "lavamoat>@babel/highlight>@babel/helper-validator-identifier": true } }, "eslint-config-rainbow>eslint-import-resolver-babel-module>@babel/core>@babel/helper-module-transforms>@babel/helper-module-imports": { @@ -1107,51 +1162,6 @@ "webpack>schema-utils>ajv-keywords": true } }, - "globby>dir-glob": { - "builtin": { - "path.extname": true, - "path.isAbsolute": true, - "path.join": true, - "path.posix.join": true - }, - "globals": { - "process.cwd": true - }, - "packages": { - "globby>dir-glob>path-type": true - } - }, - "globby>dir-glob>path-type": { - "builtin": { - "fs": true, - "util.promisify": true - } - }, - "globby>fast-glob": { - "builtin": { - "fs.lstat": true, - "fs.lstatSync": true, - "fs.readdir": true, - "fs.readdirSync": true, - "fs.stat": true, - "fs.statSync": true, - "os.cpus": true, - "path.basename": true, - "path.resolve": true, - "stream.PassThrough": true, - "stream.Readable": true - }, - "globals": { - "process.cwd": true - }, - "packages": { - "eslint>@nodelib/fs.walk": true, - "globby>fast-glob>@nodelib/fs.stat": true, - "globby>merge2": true, - "msw>chokidar>glob-parent": true, - "ts-loader>micromatch": true - } - }, "globby>fast-glob>@nodelib/fs.stat": { "builtin": { "fs.lstat": true, @@ -1160,7 +1170,7 @@ "fs.statSync": true } }, - "globby>merge2": { + "globby>fast-glob>merge2": { "builtin": { "stream.PassThrough": true }, @@ -1425,36 +1435,36 @@ }, "packages": { "jest>@jest/core>jest-snapshot>@babel/types>@babel/helper-string-parser": true, - "jest>@jest/core>jest-snapshot>@babel/types>@babel/helper-validator-identifier": true, + "lavamoat>@babel/highlight>@babel/helper-validator-identifier": true, "lavamoat>lavamoat-core>@babel/types>to-fast-properties": true } }, - "lavamoat>@babel/highlight": { + "lavamoat>lavamoat-tofu>@babel/traverse>@babel/code-frame>@babel/highlight": { "packages": { - "lavamoat>@babel/highlight>@babel/helper-validator-identifier": true, - "lavamoat>@babel/highlight>chalk": true, + "lavamoat>lavamoat-tofu>@babel/traverse>@babel/code-frame>@babel/highlight>@babel/helper-validator-identifier": true, + "lavamoat>lavamoat-tofu>@babel/traverse>@babel/code-frame>@babel/highlight>chalk": true, "react>loose-envify>js-tokens": true } }, - "lavamoat>@babel/highlight>chalk": { + "lavamoat>lavamoat-tofu>@babel/traverse>@babel/code-frame>@babel/highlight>chalk": { "globals": { "process.env.TERM": true, "process.platform": true }, "packages": { - "lavamoat>@babel/highlight>chalk>ansi-styles": true, - "lavamoat>@babel/highlight>chalk>escape-string-regexp": true, + "lavamoat>lavamoat-tofu>@babel/traverse>@babel/code-frame>@babel/highlight>chalk>ansi-styles": true, + "lavamoat>lavamoat-tofu>@babel/traverse>@babel/code-frame>@babel/highlight>chalk>escape-string-regexp": true, "supports-color": true } }, - "lavamoat>@babel/highlight>chalk>ansi-styles": { + "lavamoat>lavamoat-tofu>@babel/traverse>@babel/code-frame>@babel/highlight>chalk>ansi-styles": { "packages": { - "lavamoat>@babel/highlight>chalk>ansi-styles>color-convert": true + "lavamoat>lavamoat-tofu>@babel/traverse>@babel/code-frame>@babel/highlight>chalk>ansi-styles>color-convert": true } }, - "lavamoat>@babel/highlight>chalk>ansi-styles>color-convert": { + "lavamoat>lavamoat-tofu>@babel/traverse>@babel/code-frame>@babel/highlight>chalk>ansi-styles>color-convert": { "packages": { - "lavamoat>@babel/highlight>chalk>ansi-styles>color-convert>color-name": true + "lavamoat>lavamoat-tofu>@babel/traverse>@babel/code-frame>@babel/highlight>chalk>ansi-styles>color-convert>color-name": true } }, "lavamoat>lavamoat-tofu>@babel/traverse>@babel/helper-function-name": { @@ -1476,7 +1486,7 @@ "process.emitWarning": true }, "packages": { - "lavamoat>@babel/highlight": true, + "lavamoat>lavamoat-tofu>@babel/traverse>@babel/code-frame>@babel/highlight": true, "lavamoat>lavamoat-tofu>@babel/traverse>@babel/helper-function-name>@babel/template>@babel/code-frame>chalk": true } }, @@ -1829,27 +1839,6 @@ "viem>ws>bufferutil>node-gyp-build": true } }, - "vitest>acorn": { - "globals": { - "console": true, - "define": true - } - }, - "vitest>acorn-walk": { - "globals": { - "define": true - } - }, - "vitest>picocolors": { - "builtin": { - "tty.isatty": true - }, - "globals": { - "process.argv.includes": true, - "process.env": true, - "process.platform": true - } - }, "vitest>vite>terser": { "globals": { "Buffer.from": true, @@ -1862,7 +1851,7 @@ }, "packages": { "vitest>vite>terser>@jridgewell/source-map": true, - "vitest>vite>terser>acorn": true + "webpack>acorn": true } }, "vitest>vite>terser>@jridgewell/source-map": { @@ -1872,12 +1861,6 @@ "define": true } }, - "vitest>vite>terser>acorn": { - "globals": { - "console": true, - "define": true - } - }, "web-ext>source-map-support": { "builtin": { "fs": true, @@ -2037,18 +2020,17 @@ "packages": { "lodash": true, "viem>ws": true, - "vitest>acorn-walk": true, - "webpack-bundle-analyzer>acorn": true, + "webpack-bundle-analyzer>acorn-walk": true, "webpack-bundle-analyzer>chalk": true, "webpack-bundle-analyzer>gzip-size": true, "webpack-bundle-analyzer>opener": true, "webpack-bundle-analyzer>sirv": true, - "webpack-cli>@discoveryjs/json-ext": true + "webpack-cli>@discoveryjs/json-ext": true, + "webpack>acorn": true } }, - "webpack-bundle-analyzer>acorn": { + "webpack-bundle-analyzer>acorn-walk": { "globals": { - "console": true, "define": true } }, @@ -2467,8 +2449,8 @@ "process": true }, "packages": { - "vitest>acorn": true, - "webpack>terser-webpack-plugin>terser>@jridgewell/source-map": true + "webpack>terser-webpack-plugin>terser>@jridgewell/source-map": true, + "webpack>terser-webpack-plugin>terser>acorn": true } }, "webpack>terser-webpack-plugin>terser>@jridgewell/source-map": { @@ -2478,6 +2460,12 @@ "define": true } }, + "webpack>terser-webpack-plugin>terser>acorn": { + "globals": { + "console": true, + "define": true + } + }, "webpack>watchpack": { "builtin": { "events.EventEmitter": true, diff --git a/package.json b/package.json index 6bd1e2c633..dd8dde06cf 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ "// Build and zip": "", "bundle": "yarn build && yarn zip", "// Runs tests": "", - "anvil": "ETH_MAINNET_RPC=$(grep ETH_MAINNET_RPC .env | cut -d '=' -f2) && anvil --fork-url $ETH_MAINNET_RPC", + "anvil": "ETH_MAINNET_RPC=$(grep ETH_MAINNET_RPC .env | cut -d '=' -f2) && anvil --fork-url $ETH_MAINNET_RPC --fork-block-number 21065950", "anvil:optimism": "OPTIMISM_MAINNET_RPC=$(grep OPTIMISM_MAINNET_RPC .env | cut -d '=' -f2) && anvil --fork-url $OPTIMISM_MAINNET_RPC", "anvil:kill": "lsof -i :8545|tail -n +2|awk '{print $2}'|xargs -r kill -s SIGINT", "test": "./scripts/unit-tests.sh", @@ -82,7 +82,7 @@ "dependencies": { "@capsizecss/core": "3.0.0", "@ethereumjs/tx": "5.0.0", - "@ethereumjs/util": "9.0.0", + "@ethereumjs/util": "9.1.0", "@ethersproject/abstract-signer": "5.7.0", "@ethersproject/address": "5.7.0", "@ethersproject/bignumber": "5.7.0", @@ -206,10 +206,11 @@ "eslint-plugin-import": "2.28.1", "eslint-plugin-jest": "27.2.3", "eslint-plugin-prettier": "5.0.0", + "express": "4.21.1", "file-loader": "6.2.0", "fs-extra": "10.1.0", "geckodriver": "4.3.0", - "globby": "11.0.4", + "globby": "14.0.2", "happy-dom": "8.9.0", "html-webpack-plugin": "5.5.0", "husky": "8.0.1", @@ -228,7 +229,7 @@ "svg-path-commander": "1.0.5", "ts-loader": "9.4.1", "typescript": "5.2.2", - "vitest": "0.34.6", + "vitest": "2.1.3", "web-ext": "7.6.2", "webpack": "5.94.0", "webpack-bundle-analyzer": "4.8.0", @@ -279,7 +280,6 @@ "ws": "8.17.1", "micromatch": "4.0.8", "webpack": "5.94.0", - "path-to-regexp": "6.3.0", "dset": "3.1.4", "zod": "3.23.8", "rollup": "4.22.4" diff --git a/scripts/e2e-serial-tests.sh b/scripts/e2e-serial-tests.sh index 8aa57a1f27..31269050e3 100755 --- a/scripts/e2e-serial-tests.sh +++ b/scripts/e2e-serial-tests.sh @@ -22,7 +22,7 @@ launch_anvil() { # Function to run tests run_tests() { echo "Running Tests..." - yarn vitest e2e/serial/$1 --config ./e2e/serial/vitest.config.ts --reporter=verbose --bail 1 + yarn vitest e2e/serial/$1 --config ./e2e/serial/vitest.config.ts --reporter=verbose --bail 1 --run } # Main loop for retry logic diff --git a/scripts/unit-tests.sh b/scripts/unit-tests.sh index 571d9058ad..11ca073323 100755 --- a/scripts/unit-tests.sh +++ b/scripts/unit-tests.sh @@ -8,7 +8,7 @@ set +a # Launch anvil in the bg yarn anvil:kill -yarn anvil > anvil-unit.log 2>&1 & +yarn anvil --chain-id 1337 > anvil-unit.log 2>&1 & echo "Launching Anvil..." # Give it some time to boot diff --git a/src/core/raps/actions/claimBridge.ts b/src/core/raps/actions/claimBridge.ts index 78880d321e..eaa98e0c08 100644 --- a/src/core/raps/actions/claimBridge.ts +++ b/src/core/raps/actions/claimBridge.ts @@ -2,6 +2,7 @@ import { AddressZero } from '@ethersproject/constants'; import { CrosschainQuote, QuoteError, + configureSDK, getClaimBridgeQuote, } from '@rainbow-me/swaps'; import { Address } from 'viem'; @@ -27,6 +28,10 @@ import { ActionProps } from '../references'; import { executeCrosschainSwap } from './crosschainSwap'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + // This action is used to bridge the claimed funds to another chain export async function claimBridge({ parameters, diff --git a/src/core/raps/actions/crosschainSwap.ts b/src/core/raps/actions/crosschainSwap.ts index 92fbfd36bf..3c195f4c58 100644 --- a/src/core/raps/actions/crosschainSwap.ts +++ b/src/core/raps/actions/crosschainSwap.ts @@ -1,5 +1,9 @@ import { Signer } from '@ethersproject/abstract-signer'; -import { CrosschainQuote, fillCrosschainQuote } from '@rainbow-me/swaps'; +import { + CrosschainQuote, + configureSDK, + fillCrosschainQuote, +} from '@rainbow-me/swaps'; import { Address } from 'viem'; import { REFERRER, ReferrerType } from '~/core/references'; @@ -27,6 +31,10 @@ import { overrideWithFastSpeedIfNeeded, } from '../utils'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + const getCrosschainSwapDefaultGasLimit = (quote: CrosschainQuote) => quote?.routes?.[0]?.userTxs?.[0]?.gasFees?.gasLimit; diff --git a/src/core/raps/actions/swap.ts b/src/core/raps/actions/swap.ts index fbb5d5573f..8d7c56edb8 100644 --- a/src/core/raps/actions/swap.ts +++ b/src/core/raps/actions/swap.ts @@ -8,6 +8,7 @@ import { ChainId as SwapChainId, SwapType, WRAPPED_ASSET, + configureSDK, fillQuote, getQuoteExecutionDetails, getRainbowRouterContractAddress, @@ -48,6 +49,10 @@ import { import { populateApprove } from './unlock'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + const WRAP_GAS_PADDING = 1.002; export const estimateSwapGasLimit = async ({ diff --git a/src/core/raps/references.ts b/src/core/raps/references.ts index c1615494c9..9d36d813dc 100644 --- a/src/core/raps/references.ts +++ b/src/core/raps/references.ts @@ -1,10 +1,14 @@ import { Signer } from '@ethersproject/abstract-signer'; -import { CrosschainQuote, Quote } from '@rainbow-me/swaps'; +import { CrosschainQuote, Quote, configureSDK } from '@rainbow-me/swaps'; import { Address } from 'viem'; import { ParsedAsset } from '../types/assets'; import { ChainId } from '../types/chains'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + export enum SwapModalField { input = 'inputAmount', native = 'nativeAmount', diff --git a/src/core/raps/unlockAndCrosschainSwap.ts b/src/core/raps/unlockAndCrosschainSwap.ts index 08c7e22458..11e092539c 100644 --- a/src/core/raps/unlockAndCrosschainSwap.ts +++ b/src/core/raps/unlockAndCrosschainSwap.ts @@ -1,3 +1,4 @@ +import { configureSDK } from '@rainbow-me/swaps'; import { Address } from 'viem'; import { add } from '../utils/numbers'; @@ -11,6 +12,10 @@ import { RapUnlockActionParameters, } from './references'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + export const estimateUnlockAndCrosschainSwap = async ( swapParameters: RapSwapActionParameters<'crosschainSwap'>, ) => { diff --git a/src/core/raps/unlockAndSwap.ts b/src/core/raps/unlockAndSwap.ts index ff3e7fff08..cccaf830db 100644 --- a/src/core/raps/unlockAndSwap.ts +++ b/src/core/raps/unlockAndSwap.ts @@ -1,4 +1,7 @@ -import { getRainbowRouterContractAddress } from '@rainbow-me/swaps'; +import { + configureSDK, + getRainbowRouterContractAddress, +} from '@rainbow-me/swaps'; import { Address } from 'viem'; import { add } from '../utils/numbers'; @@ -16,6 +19,10 @@ import { RapUnlockActionParameters, } from './references'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + export const estimateUnlockAndSwap = async ( swapParameters: RapSwapActionParameters<'swap'>, ) => { diff --git a/src/core/raps/utils.ts b/src/core/raps/utils.ts index f877b594b2..ddb9662e55 100644 --- a/src/core/raps/utils.ts +++ b/src/core/raps/utils.ts @@ -5,6 +5,7 @@ import { StaticJsonRpcProvider } from '@ethersproject/providers'; import { CrosschainQuote, Quote, + configureSDK, getQuoteExecutionDetails, getRainbowRouterContractAddress, } from '@rainbow-me/swaps'; @@ -31,6 +32,10 @@ const GAS_LIMIT_INCREMENT = 50000; const EXTRA_GAS_PADDING = 1.5; const TRACE_CALL_BLOCK_NUMBER_OFFSET = 20; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + /** * If gas price is not defined, override with fast speed */ diff --git a/src/core/resources/gas/estimateSwapGasLimit.ts b/src/core/resources/gas/estimateSwapGasLimit.ts index 20eab9e07c..63c334affd 100644 --- a/src/core/resources/gas/estimateSwapGasLimit.ts +++ b/src/core/resources/gas/estimateSwapGasLimit.ts @@ -3,6 +3,7 @@ import { Quote, QuoteError, SwapType, + configureSDK, } from '@rainbow-me/swaps'; import { useQuery } from '@tanstack/react-query'; @@ -19,6 +20,10 @@ import { getChainGasUnits } from '~/core/references/chains'; import { ParsedAsset, ParsedSearchAsset } from '~/core/types/assets'; import { ChainId } from '~/core/types/chains'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + // /////////////////////////////////////////////// // Query Types diff --git a/src/core/utils/swaps.ts b/src/core/utils/swaps.ts index ee3a209826..db4f9bfe61 100644 --- a/src/core/utils/swaps.ts +++ b/src/core/utils/swaps.ts @@ -3,6 +3,7 @@ import { ETH_ADDRESS, Quote, WRAPPED_ASSET, + configureSDK, } from '@rainbow-me/swaps'; import { i18n } from '../languages'; @@ -12,6 +13,10 @@ import { ChainId } from '../types/chains'; import { isLowerCaseMatch } from './strings'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + export const getQuoteServiceTime = ({ quote, }: { diff --git a/src/design-system/docs/README.md b/src/design-system/docs/README.md index c87e0421d2..64db3c7e78 100644 --- a/src/design-system/docs/README.md +++ b/src/design-system/docs/README.md @@ -10,11 +10,11 @@ npm run dev yarn dev ``` -Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. +Open [http://127.0.0.1:3001](http://127.0.0.1:3001) with your browser to see the result. You can start editing the page by modifying `pages/index.tsx`. The page auto-updates as you edit the file. -[API routes](https://nextjs.org/docs/api-routes/introduction) can be accessed on [http://localhost:3000/api/hello](http://localhost:3000/api/hello). This endpoint can be edited in `pages/api/hello.ts`. +[API routes](https://nextjs.org/docs/api-routes/introduction) can be accessed on [http://127.0.0.1:3001/api/hello](http://127.0.0.1:3001/api/hello). This endpoint can be edited in `pages/api/hello.ts`. The `pages/api` directory is mapped to `/api/*`. Files in this directory are treated as [API routes](https://nextjs.org/docs/api-routes/introduction) instead of React pages. diff --git a/src/entries/popup/components/TransactionFee/TransactionFee.tsx b/src/entries/popup/components/TransactionFee/TransactionFee.tsx index 5bfc248721..d2c58d3fdd 100644 --- a/src/entries/popup/components/TransactionFee/TransactionFee.tsx +++ b/src/entries/popup/components/TransactionFee/TransactionFee.tsx @@ -1,6 +1,11 @@ /* eslint-disable no-nested-ternary */ import { TransactionRequest } from '@ethersproject/abstract-provider'; -import { CrosschainQuote, Quote, QuoteError } from '@rainbow-me/swaps'; +import { + CrosschainQuote, + Quote, + QuoteError, + configureSDK, +} from '@rainbow-me/swaps'; import React, { useCallback, useMemo, useRef, useState } from 'react'; import { Address } from 'viem'; @@ -43,6 +48,10 @@ import { CursorTooltip } from '../Tooltip/CursorTooltip'; import { CustomGasSheet } from './CustomGasSheet'; import { SwitchTransactionSpeedMenu } from './TransactionSpeedsMenu'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + type FeeProps = { chainId: ChainId; disableShortcuts?: boolean; diff --git a/src/entries/popup/hooks/swap/useSwapNativeAmounts.tsx b/src/entries/popup/hooks/swap/useSwapNativeAmounts.tsx index 6eb34d07ac..169a39da45 100644 --- a/src/entries/popup/hooks/swap/useSwapNativeAmounts.tsx +++ b/src/entries/popup/hooks/swap/useSwapNativeAmounts.tsx @@ -1,4 +1,4 @@ -import { CrosschainQuote, Quote } from '@rainbow-me/swaps'; +import { CrosschainQuote, Quote, configureSDK } from '@rainbow-me/swaps'; import { useMemo } from 'react'; import { supportedCurrencies } from '~/core/references'; @@ -10,6 +10,10 @@ import { handleSignificantDecimalsAsNumber, } from '~/core/utils/numbers'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + export const useSwapNativeAmounts = ({ assetToSell, assetToSellValue, diff --git a/src/entries/popup/hooks/swap/useSwapQuote.ts b/src/entries/popup/hooks/swap/useSwapQuote.ts index 23aa853c69..81fcfe7824 100644 --- a/src/entries/popup/hooks/swap/useSwapQuote.ts +++ b/src/entries/popup/hooks/swap/useSwapQuote.ts @@ -6,6 +6,7 @@ import { QuoteParams, Source, SwapType, + configureSDK, getCrosschainQuote, getQuote, } from '@rainbow-me/swaps'; @@ -20,6 +21,10 @@ import { isUnwrapEth, isWrapEth } from '~/core/utils/swaps'; import { IndependentField } from './useSwapInputs'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + const SWAP_POLLING_INTERVAL = 5000; const CACHE_INTERVAL = 1000; const INTERNAL_BUILD = process.env.INTERNAL_BUILD === 'true'; diff --git a/src/entries/popup/hooks/swap/useSwapQuoteHandler.ts b/src/entries/popup/hooks/swap/useSwapQuoteHandler.ts index d6f43c954e..bc7a8fe064 100644 --- a/src/entries/popup/hooks/swap/useSwapQuoteHandler.ts +++ b/src/entries/popup/hooks/swap/useSwapQuoteHandler.ts @@ -1,4 +1,9 @@ -import { CrosschainQuote, Quote, QuoteError } from '@rainbow-me/swaps'; +import { + CrosschainQuote, + Quote, + QuoteError, + configureSDK, +} from '@rainbow-me/swaps'; import { useEffect } from 'react'; import { ParsedSearchAsset } from '~/core/types/assets'; @@ -8,6 +13,10 @@ import usePrevious from '../usePrevious'; import { IndependentField } from './useSwapInputs'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + interface SwapQuoteHandlerProps { assetToBuy: ParsedSearchAsset | null; assetToSell: ParsedSearchAsset | null; diff --git a/src/entries/popup/hooks/swap/useSwapReviewDetails.ts b/src/entries/popup/hooks/swap/useSwapReviewDetails.ts index e3ce7d0a34..3cc4af44bd 100644 --- a/src/entries/popup/hooks/swap/useSwapReviewDetails.ts +++ b/src/entries/popup/hooks/swap/useSwapReviewDetails.ts @@ -1,4 +1,4 @@ -import { CrosschainQuote, Quote } from '@rainbow-me/swaps'; +import { CrosschainQuote, Quote, configureSDK } from '@rainbow-me/swaps'; import { useMemo } from 'react'; import { ParsedSearchAsset } from '~/core/types/assets'; @@ -11,6 +11,10 @@ import { multiply, } from '~/core/utils/numbers'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + const getExchangeIconUrl = (protocol: string): string | null => { if (!protocol) return null; const parsedProtocol = protocol?.replace(' ', '')?.toLowerCase(); diff --git a/src/entries/popup/hooks/swap/useSwapSettings.ts b/src/entries/popup/hooks/swap/useSwapSettings.ts index c5ce553618..8b35450596 100644 --- a/src/entries/popup/hooks/swap/useSwapSettings.ts +++ b/src/entries/popup/hooks/swap/useSwapSettings.ts @@ -1,4 +1,4 @@ -import { Source } from '@rainbow-me/swaps'; +import { Source, configureSDK } from '@rainbow-me/swaps'; import { useCallback, useEffect, useState } from 'react'; import config from '~/core/firebase/remoteConfig'; @@ -7,6 +7,10 @@ import { ChainId, ChainName, chainIdToNameMapping } from '~/core/types/chains'; import usePrevious from '../usePrevious'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + export const DEFAULT_SLIPPAGE_BIPS = { [ChainId.mainnet]: 100, [ChainId.polygon]: 200, diff --git a/src/entries/popup/hooks/swap/useSwapSlippage.tsx b/src/entries/popup/hooks/swap/useSwapSlippage.tsx index b950c9b8c6..04b7b9afb4 100644 --- a/src/entries/popup/hooks/swap/useSwapSlippage.tsx +++ b/src/entries/popup/hooks/swap/useSwapSlippage.tsx @@ -1,4 +1,4 @@ -import { getSlippage } from '@rainbow-me/swaps'; +import { configureSDK, getSlippage } from '@rainbow-me/swaps'; import { useQuery } from '@tanstack/react-query'; import { BigNumberish } from 'ethers'; import { Address } from 'viem'; @@ -11,6 +11,10 @@ import { } from '~/core/react-query'; import { ChainId } from '~/core/types/chains'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + export interface SwapSlippage { slippagePercent: number; } diff --git a/src/entries/popup/hooks/useGas.ts b/src/entries/popup/hooks/useGas.ts index 9d09553d8d..e55f0df55b 100644 --- a/src/entries/popup/hooks/useGas.ts +++ b/src/entries/popup/hooks/useGas.ts @@ -1,6 +1,11 @@ /* eslint-disable no-nested-ternary */ import { TransactionRequest } from '@ethersproject/abstract-provider'; -import { CrosschainQuote, Quote, QuoteError } from '@rainbow-me/swaps'; +import { + CrosschainQuote, + Quote, + QuoteError, + configureSDK, +} from '@rainbow-me/swaps'; import { useQuery } from '@tanstack/react-query'; import { useCallback, useEffect, useMemo, useState } from 'react'; import { Address } from 'viem'; @@ -39,6 +44,10 @@ import { useDebounce } from './useDebounce'; import usePrevious from './usePrevious'; import { useUserNativeAsset } from './useUserNativeAsset'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + const useGas = ({ chainId, address, diff --git a/src/entries/popup/pages/swap/SwapReviewSheet/SwapReviewSheet.tsx b/src/entries/popup/pages/swap/SwapReviewSheet/SwapReviewSheet.tsx index 15f70ce2b5..997d2a4e68 100644 --- a/src/entries/popup/pages/swap/SwapReviewSheet/SwapReviewSheet.tsx +++ b/src/entries/popup/pages/swap/SwapReviewSheet/SwapReviewSheet.tsx @@ -1,4 +1,9 @@ -import { CrosschainQuote, Quote, QuoteError } from '@rainbow-me/swaps'; +import { + CrosschainQuote, + Quote, + QuoteError, + configureSDK, +} from '@rainbow-me/swaps'; import { motion } from 'framer-motion'; import React, { useCallback, @@ -60,6 +65,10 @@ import { SwapAssetCard } from './SwapAssetCard'; import { SwapRoutes } from './SwapRoutes'; import { SwapViewContractDropdown } from './SwapViewContractDropdown'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + export const ReviewDetailsRow = ({ children, testId, diff --git a/src/entries/popup/pages/swap/SwapSettings/SwapRouteDropdownMenu.tsx b/src/entries/popup/pages/swap/SwapSettings/SwapRouteDropdownMenu.tsx index bf2ba337fd..3b991f2376 100644 --- a/src/entries/popup/pages/swap/SwapSettings/SwapRouteDropdownMenu.tsx +++ b/src/entries/popup/pages/swap/SwapSettings/SwapRouteDropdownMenu.tsx @@ -1,4 +1,4 @@ -import { Source } from '@rainbow-me/swaps'; +import { Source, configureSDK } from '@rainbow-me/swaps'; import React, { ReactNode, useCallback } from 'react'; import { Box, Inline, Text } from '~/design-system'; @@ -12,6 +12,10 @@ import { import { aggregatorInfo } from '../utils'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + type DropdownSource = Source.Aggregator0x | Source.Aggregator1inch | 'auto'; interface SwapRouteDropdownMenuProps { diff --git a/src/entries/popup/pages/swap/SwapSettings/SwapSettings.tsx b/src/entries/popup/pages/swap/SwapSettings/SwapSettings.tsx index de09150360..70cfe8a57e 100644 --- a/src/entries/popup/pages/swap/SwapSettings/SwapSettings.tsx +++ b/src/entries/popup/pages/swap/SwapSettings/SwapSettings.tsx @@ -1,4 +1,4 @@ -import { Source } from '@rainbow-me/swaps'; +import { Source, configureSDK } from '@rainbow-me/swaps'; import { AnimatePresence, motion } from 'framer-motion'; import { I18n } from 'i18n-js'; import { useCallback, useEffect, useMemo, useRef, useState } from 'react'; @@ -44,6 +44,10 @@ import { aggregatorInfo } from '../utils'; import { SwapRouteDropdownMenu } from './SwapRouteDropdownMenu'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + const Label = ({ label, warning, diff --git a/src/entries/popup/pages/swap/index.tsx b/src/entries/popup/pages/swap/index.tsx index ac30cfc969..86ff66b5c4 100644 --- a/src/entries/popup/pages/swap/index.tsx +++ b/src/entries/popup/pages/swap/index.tsx @@ -1,4 +1,9 @@ -import { CrosschainQuote, Quote, QuoteError } from '@rainbow-me/swaps'; +import { + CrosschainQuote, + Quote, + QuoteError, + configureSDK, +} from '@rainbow-me/swaps'; import { useCallback, useEffect, useMemo, useRef, useState } from 'react'; import { useSearchParams } from 'react-router-dom'; import { Address } from 'viem'; @@ -81,6 +86,10 @@ import { TokenToSellInput } from './SwapTokenInput/TokenToSellInput'; import { SwapTimeEstimate, getSwapTimeEstimate } from './swapTimeEstimate'; import { useSwapButton } from './useSwapButton'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + const SwapWarning = ({ timeEstimate, priceImpact, diff --git a/src/entries/popup/pages/swap/onSwap.tsx b/src/entries/popup/pages/swap/onSwap.tsx index ae75d8e499..3af26275ad 100644 --- a/src/entries/popup/pages/swap/onSwap.tsx +++ b/src/entries/popup/pages/swap/onSwap.tsx @@ -1,4 +1,9 @@ -import { CrosschainQuote, Quote, QuoteError } from '@rainbow-me/swaps'; +import { + CrosschainQuote, + Quote, + QuoteError, + configureSDK, +} from '@rainbow-me/swaps'; import { Address } from 'viem'; import { analytics } from '~/analytics'; @@ -19,6 +24,10 @@ import { RainbowError, logger } from '~/logger'; import { executeRap, getWallet } from '../../handlers/wallet'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + export const onSwap = async ({ assetToSell, assetToBuy, diff --git a/src/entries/popup/pages/swap/swapTimeEstimate.ts b/src/entries/popup/pages/swap/swapTimeEstimate.ts index 1a4ddbc5df..cbc92c045b 100644 --- a/src/entries/popup/pages/swap/swapTimeEstimate.ts +++ b/src/entries/popup/pages/swap/swapTimeEstimate.ts @@ -1,10 +1,19 @@ -import { CrosschainQuote, Quote, QuoteError } from '@rainbow-me/swaps'; +import { + CrosschainQuote, + Quote, + QuoteError, + configureSDK, +} from '@rainbow-me/swaps'; import { getCrossChainTimeEstimate, getQuoteServiceTime, } from '~/core/utils/swaps'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + export interface SwapTimeEstimate { isLongWait: boolean; timeEstimate?: number; diff --git a/src/entries/popup/pages/swap/useSwapButton.tsx b/src/entries/popup/pages/swap/useSwapButton.tsx index 175864e5af..9aa90d3237 100644 --- a/src/entries/popup/pages/swap/useSwapButton.tsx +++ b/src/entries/popup/pages/swap/useSwapButton.tsx @@ -1,4 +1,9 @@ -import { CrosschainQuote, Quote, QuoteError } from '@rainbow-me/swaps'; +import { + CrosschainQuote, + Quote, + QuoteError, + configureSDK, +} from '@rainbow-me/swaps'; import React, { useState } from 'react'; import { ParsedSearchAsset } from '~/core/types/assets'; @@ -23,6 +28,10 @@ import { ROUTES } from '../../urls'; import { onSwap } from './onSwap'; import { SwapTimeEstimate } from './swapTimeEstimate'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + interface UseSwapButtonArgs { quote?: Quote | CrosschainQuote | QuoteError; isLoading: boolean; diff --git a/src/entries/popup/pages/swap/utils.ts b/src/entries/popup/pages/swap/utils.ts index 0384b3d7c3..2d809bffe0 100644 --- a/src/entries/popup/pages/swap/utils.ts +++ b/src/entries/popup/pages/swap/utils.ts @@ -1,10 +1,14 @@ -import { Source } from '@rainbow-me/swaps'; +import { Source, configureSDK } from '@rainbow-me/swaps'; import Logo0x from 'static/assets/aggregators/0x.png'; import Logo1Inch from 'static/assets/aggregators/1inch.png'; import LogoRainbow from 'static/assets/aggregators/rainbow.png'; import { i18n } from '~/core/languages'; +const IS_TESTING = process.env.IS_TESTING === 'true'; + +IS_TESTING && configureSDK({ apiBaseUrl: 'http://127.0.0.1:3001' }); + export const aggregatorInfo = { auto: { logo: LogoRainbow, name: i18n.t('swap.aggregators.rainbow') }, [Source.Aggregator0x]: { logo: Logo0x, name: Source.Aggregator0x }, diff --git a/src/test/setup.ts b/src/test/setup.ts index 4c8cff7434..d262ea62e6 100644 --- a/src/test/setup.ts +++ b/src/test/setup.ts @@ -2,6 +2,8 @@ import { rest } from 'msw'; import { setupServer } from 'msw/node'; import { afterAll, afterEach, beforeAll, vi } from 'vitest'; +import { startMockServer } from '../../e2e/mockServer'; + vi.stubGlobal('chrome', { storage: { local: { @@ -26,6 +28,7 @@ vi.stubGlobal('window.location', { const abortFn = vi.fn(); +// eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore global.AbortController = vi.fn(() => ({ abort: abortFn, @@ -159,14 +162,44 @@ export const restHandlers = [ const server = setupServer(...restHandlers); +let mockServer: Awaited>; + // Start server before all tests -beforeAll(() => { +beforeAll(async () => { location.replace(`https://aha.rainbow.me/`); server.listen({ onUnhandledRequest: 'bypass' }); + + // mock server + try { + mockServer = await startMockServer(); + console.log('Mock server started successfully'); + } catch (e) { + console.error(`Error setting up test server: ${e}`); + throw new Error('Failed to start mock server'); + } }); // Close server after all tests -afterAll(() => server.close()); +afterAll(() => { + server.close(); + + // mock server cleanup + return new Promise((resolve, reject) => { + if (mockServer) { + mockServer.close((err) => { + if (err) { + console.error('Error shutting down the mock server:', err); + reject(err); + } else { + console.log('Mock server closed successfully'); + resolve(); + } + }); + } else { + resolve(); + } + }); +}); // Reset handlers after each test `important for test isolation` afterEach(() => server.resetHandlers()); diff --git a/yarn.lock b/yarn.lock index 8c336c2164..56da3e2880 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1125,6 +1125,14 @@ "@ethereumjs/rlp" "^5.0.0" ethereum-cryptography "^2.1.2" +"@ethereumjs/util@9.1.0": + version "9.1.0" + resolved "https://registry.yarnpkg.com/@ethereumjs/util/-/util-9.1.0.tgz#75e3898a3116d21c135fa9e29886565609129bce" + integrity sha512-XBEKsYqLGXLah9PNJbgdkigthkG7TAGvlD/sH12beMXEyHDyigfcbdvHhmLyDWgDyOJn4QwiQUaF7yeuhnjdog== + dependencies: + "@ethereumjs/rlp" "^5.0.2" + ethereum-cryptography "^2.2.1" + "@ethereumjs/util@^8.1.0": version "8.1.0" resolved "https://registry.yarnpkg.com/@ethereumjs/util/-/util-8.1.0.tgz#299df97fb6b034e0577ce9f94c7d9d1004409ed4" @@ -2363,13 +2371,6 @@ dependencies: "@sinclair/typebox" "^0.24.1" -"@jest/schemas@^29.6.0": - version "29.6.0" - resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.0.tgz#0f4cb2c8e3dca80c135507ba5635a4fd755b0040" - integrity sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ== - dependencies: - "@sinclair/typebox" "^0.27.8" - "@jest/source-map@^29.2.0": version "29.2.0" resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.2.0.tgz#ab3420c46d42508dcc3dc1c6deee0b613c235744" @@ -2598,11 +2599,16 @@ resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24" integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw== -"@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.4.15": +"@jridgewell/sourcemap-codec@^1.4.14": version "1.4.15" resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== +"@jridgewell/sourcemap-codec@^1.5.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a" + integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== + "@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.15", "@jridgewell/trace-mapping@^0.3.9": version "0.3.17" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985" @@ -4485,6 +4491,11 @@ resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-5.6.0.tgz#41dd6093d34652cddb5d5bdeee04eafc33826668" integrity sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g== +"@sindresorhus/merge-streams@^2.1.0": + version "2.3.0" + resolved "https://registry.yarnpkg.com/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz#719df7fb41766bc143369eaa0dd56d8dc87c9958" + integrity sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg== + "@sinonjs/commons@^1.7.0": version "1.8.3" resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d" @@ -4987,23 +4998,11 @@ dependencies: "@types/node" "*" -"@types/chai-subset@^1.3.3": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@types/chai-subset/-/chai-subset-1.3.3.tgz#97893814e92abd2c534de422cb377e0e0bdaac94" - integrity sha512-frBecisrNGz+F4T6bcc+NLeolfiojh5FxW2klu669+8BARtyQv2C/GkNW6FUodVe4BroGMP/wER/YDGc7rEllw== - dependencies: - "@types/chai" "*" - "@types/chai@*": version "4.3.3" resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.3.3.tgz#3c90752792660c4b562ad73b3fbd68bf3bc7ae07" integrity sha512-hC7OMnszpxhZPduX+m+nrx+uFoLkWOMiR4oa/AZF3MuSETYTZmFfJAHqZEM8MVlvfG7BEUcgvtwoCTxBp6hm3g== -"@types/chai@^4.3.5": - version "4.3.5" - resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.3.5.tgz#ae69bcbb1bebb68c4ac0b11e9d8ed04526b3562b" - integrity sha512-mEo1sAde+UCE6b2hxn332f1g1E8WfYRu6p5SvTKr2ZKC1f7gFJXk4h5PyGP9Dt6gCaG8y8XhwnXWC6Iy2cmBng== - "@types/chroma-js@2.1.4": version "2.1.4" resolved "https://registry.yarnpkg.com/@types/chroma-js/-/chroma-js-2.1.4.tgz#52e3a8453000cdb9ad76357c2c47dbed702d136f" @@ -5046,6 +5045,11 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.5.tgz#a6ce3e556e00fd9895dd872dd172ad0d4bd687f4" integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== +"@types/estree@^1.0.0": + version "1.0.6" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50" + integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw== + "@types/filesystem@*": version "0.0.32" resolved "https://registry.yarnpkg.com/@types/filesystem/-/filesystem-0.0.32.tgz#307df7cc084a2293c3c1a31151b178063e0a8edf" @@ -5733,48 +5737,64 @@ dependencies: "@vibrant/types" "^3.2.1-alpha.1" -"@vitest/expect@0.34.6": - version "0.34.6" - resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-0.34.6.tgz#608a7b7a9aa3de0919db99b4cc087340a03ea77e" - integrity sha512-QUzKpUQRc1qC7qdGo7rMK3AkETI7w18gTCUrsNnyjjJKYiuUB9+TQK3QnR1unhCnWRC0AbKv2omLGQDF/mIjOw== +"@vitest/expect@2.1.3": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-2.1.3.tgz#4b9a6fff22be4c4cd5d57e687cfda611b514b0ad" + integrity sha512-SNBoPubeCJhZ48agjXruCI57DvxcsivVDdWz+SSsmjTT4QN/DfHk3zB/xKsJqMs26bLZ/pNRLnCf0j679i0uWQ== dependencies: - "@vitest/spy" "0.34.6" - "@vitest/utils" "0.34.6" - chai "^4.3.10" + "@vitest/spy" "2.1.3" + "@vitest/utils" "2.1.3" + chai "^5.1.1" + tinyrainbow "^1.2.0" -"@vitest/runner@0.34.6": - version "0.34.6" - resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-0.34.6.tgz#6f43ca241fc96b2edf230db58bcde5b974b8dcaf" - integrity sha512-1CUQgtJSLF47NnhN+F9X2ycxUP0kLHQ/JWvNHbeBfwW8CzEGgeskzNnHDyv1ieKTltuR6sdIHV+nmR6kPxQqzQ== +"@vitest/mocker@2.1.3": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@vitest/mocker/-/mocker-2.1.3.tgz#a3593b426551be5715fa108faf04f8a9ddb0a9cc" + integrity sha512-eSpdY/eJDuOvuTA3ASzCjdithHa+GIF1L4PqtEELl6Qa3XafdMLBpBlZCIUCX2J+Q6sNmjmxtosAG62fK4BlqQ== dependencies: - "@vitest/utils" "0.34.6" - p-limit "^4.0.0" - pathe "^1.1.1" + "@vitest/spy" "2.1.3" + estree-walker "^3.0.3" + magic-string "^0.30.11" -"@vitest/snapshot@0.34.6": - version "0.34.6" - resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-0.34.6.tgz#b4528cf683b60a3e8071cacbcb97d18b9d5e1d8b" - integrity sha512-B3OZqYn6k4VaN011D+ve+AA4whM4QkcwcrwaKwAbyyvS/NB1hCWjFIBQxAQQSQir9/RtyAAGuq+4RJmbn2dH4w== +"@vitest/pretty-format@2.1.3", "@vitest/pretty-format@^2.1.3": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@vitest/pretty-format/-/pretty-format-2.1.3.tgz#48b9b03de75507d1d493df7beb48dc39a1946a3e" + integrity sha512-XH1XdtoLZCpqV59KRbPrIhFCOO0hErxrQCMcvnQete3Vibb9UeIOX02uFPfVn3Z9ZXsq78etlfyhnkmIZSzIwQ== dependencies: - magic-string "^0.30.1" - pathe "^1.1.1" - pretty-format "^29.5.0" + tinyrainbow "^1.2.0" -"@vitest/spy@0.34.6": - version "0.34.6" - resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-0.34.6.tgz#b5e8642a84aad12896c915bce9b3cc8cdaf821df" - integrity sha512-xaCvneSaeBw/cz8ySmF7ZwGvL0lBjfvqc1LpQ/vcdHEvpLn3Ff1vAvjw+CoGn0802l++5L/pxb7whwcWAw+DUQ== +"@vitest/runner@2.1.3": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-2.1.3.tgz#20a6da112007dfd92969951df189c6da66c9dac4" + integrity sha512-JGzpWqmFJ4fq5ZKHtVO3Xuy1iF2rHGV4d/pdzgkYHm1+gOzNZtqjvyiaDGJytRyMU54qkxpNzCx+PErzJ1/JqQ== dependencies: - tinyspy "^2.1.1" + "@vitest/utils" "2.1.3" + pathe "^1.1.2" -"@vitest/utils@0.34.6": - version "0.34.6" - resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-0.34.6.tgz#38a0a7eedddb8e7291af09a2409cb8a189516968" - integrity sha512-IG5aDD8S6zlvloDsnzHw0Ut5xczlF+kv2BOTo+iXfPr54Yhi5qbVOgGB1hZaVq4iJ4C/MZ2J0y15IlsV/ZcI0A== +"@vitest/snapshot@2.1.3": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-2.1.3.tgz#1b405a9c40a82563605b13fdc045217751069e58" + integrity sha512-qWC2mWc7VAXmjAkEKxrScWHWFyCQx/cmiZtuGqMi+WwqQJ2iURsVY4ZfAK6dVo6K2smKRU6l3BPwqEBvhnpQGg== dependencies: - diff-sequences "^29.4.3" - loupe "^2.3.6" - pretty-format "^29.5.0" + "@vitest/pretty-format" "2.1.3" + magic-string "^0.30.11" + pathe "^1.1.2" + +"@vitest/spy@2.1.3": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-2.1.3.tgz#2c8a457673094ec4c1ab7c50cb11c58e3624ada2" + integrity sha512-Nb2UzbcUswzeSP7JksMDaqsI43Sj5+Kry6ry6jQJT4b5gAK+NS9NED6mDb8FlMRCX8m5guaHCDZmqYMMWRy5nQ== + dependencies: + tinyspy "^3.0.0" + +"@vitest/utils@2.1.3": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-2.1.3.tgz#e52aa5745384091b151cbdf79bb5a3ad2bea88d2" + integrity sha512-xpiVfDSg1RrYT0tX6czgerkpcKFmFOF/gCr30+Mve5V2kewCy4Prn1/NDMSRwaSmT7PRaOF83wu+bEtsY1wrvA== + dependencies: + "@vitest/pretty-format" "2.1.3" + loupe "^3.1.1" + tinyrainbow "^1.2.0" "@wagmi/connectors@4.3.3": version "4.3.3" @@ -6287,6 +6307,14 @@ abort-controller@^3.0.0: dependencies: event-target-shim "^5.0.0" +accepts@~1.3.8: + version "1.3.8" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" + integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== + dependencies: + mime-types "~2.1.34" + negotiator "0.6.3" + acorn-import-attributes@^1.9.5: version "1.9.5" resolved "https://registry.yarnpkg.com/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz#7eb1557b1ba05ef18b5ed0ec67591bfab04688ef" @@ -6311,7 +6339,7 @@ acorn-walk@^7.0.0: resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== -acorn-walk@^8.0.0, acorn-walk@^8.2.0: +acorn-walk@^8.0.0: version "8.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== @@ -6630,6 +6658,11 @@ array-each@^1.0.1: resolved "https://registry.yarnpkg.com/array-each/-/array-each-1.0.1.tgz#a794af0c05ab1752846ee753a1f211a05ba0c44f" integrity sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA== +array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== + array-includes@^3.1.5: version "3.1.5" resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.5.tgz#2c320010db8d31031fd2a5f6b3bbd4b1aad31bdb" @@ -7122,6 +7155,24 @@ bn.js@5.2.1, bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.8, bn.js@^4.11.9, bn.js@^5. resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== +body-parser@1.20.3: + version "1.20.3" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.3.tgz#1953431221c6fb5cd63c4b36d53fab0928e548c6" + integrity sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g== + dependencies: + bytes "3.1.2" + content-type "~1.0.5" + debug "2.6.9" + depd "2.0.0" + destroy "1.2.0" + http-errors "2.0.0" + iconv-lite "0.4.24" + on-finished "2.4.1" + qs "6.13.0" + raw-body "2.5.2" + type-is "~1.6.18" + unpipe "1.0.0" + boolbase@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" @@ -7476,6 +7527,11 @@ busboy@^1.6.0: dependencies: streamsearch "^1.1.0" +bytes@3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" + integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== + cac@^6.7.14: version "6.7.14" resolved "https://registry.yarnpkg.com/cac/-/cac-6.7.14.tgz#804e1e6f506ee363cb0e3ccbb09cad5dd9870959" @@ -7614,7 +7670,7 @@ centra@^2.7.0: dependencies: follow-redirects "^1.15.6" -chai@4.3.10, chai@^4.3.10: +chai@4.3.10, chai@^5.1.1: version "4.3.10" resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.10.tgz#d784cec635e3b7e2ffb66446a63b4e33bd390384" integrity sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g== @@ -8141,6 +8197,18 @@ constants-browserify@~1.0.0: resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" integrity sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ== +content-disposition@0.5.4: + version "0.5.4" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" + integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== + dependencies: + safe-buffer "5.2.1" + +content-type@~1.0.4, content-type@~1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" + integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== + convert-source-map@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" @@ -8161,6 +8229,16 @@ cookie-es@^1.0.0: resolved "https://registry.yarnpkg.com/cookie-es/-/cookie-es-1.1.0.tgz#68f8d9f48aeb5a534f3896f80e792760d3d20def" integrity sha512-L2rLOcK0wzWSfSDA33YR+PUHDG10a8px7rUHKWbGLP4YfbsMed2KFUw5fczvDPbT98DDe3LEzviswl810apTEw== +cookie-signature@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== + +cookie@0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.1.tgz#2f73c42142d5d5cf71310a74fc4ae61670e5dbc9" + integrity sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w== + cookie@^0.4.2: version "0.4.2" resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" @@ -8439,6 +8517,13 @@ debounce@1.2.1: resolved "https://registry.yarnpkg.com/debounce/-/debounce-1.2.1.tgz#38881d8f4166a5c5848020c11827b834bcb3e0a5" integrity sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug== +debug@2.6.9, debug@^2.6.9: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4, debug@~4.3.1, debug@~4.3.2: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" @@ -8453,13 +8538,6 @@ debug@4.3.1: dependencies: ms "2.1.2" -debug@^2.6.9: - version "2.6.9" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" @@ -8467,6 +8545,13 @@ debug@^3.2.7: dependencies: ms "^2.1.1" +debug@^4.3.6: + version "4.3.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.7.tgz#87945b4151a011d76d95a198d7111c865c360a52" + integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ== + dependencies: + ms "^2.1.3" + decamelize@6.0.0, decamelize@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-6.0.0.tgz#8cad4d916fde5c41a264a43d0ecc56fe3d31749e" @@ -8656,6 +8741,11 @@ delegates@^1.0.0: resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== +depd@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== + deps-sort@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/deps-sort/-/deps-sort-2.0.1.tgz#9dfdc876d2bcec3386b6829ac52162cda9fa208d" @@ -8679,6 +8769,11 @@ destr@^2.0.3: resolved "https://registry.yarnpkg.com/destr/-/destr-2.0.3.tgz#7f9e97cb3d16dbdca7be52aca1644ce402cfe449" integrity sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ== +destroy@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" + integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== + detect-browser@5.3.0, detect-browser@^5.2.0: version "5.3.0" resolved "https://registry.yarnpkg.com/detect-browser/-/detect-browser-5.3.0.tgz#9705ef2bddf46072d0f7265a1fe300e36fe7ceca" @@ -8718,11 +8813,6 @@ diff-sequences@^29.2.0: resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.2.0.tgz#4c55b5b40706c7b5d2c5c75999a50c56d214e8f6" integrity sha512-413SY5JpYeSBZxmenGEmCVQ8mCgtFJF0w9PROdaS6z987XC2Pd2GOKqOITLtMftmyFZqgtCOb/QA7/Z3ZXfzIw== -diff-sequences@^29.4.3: - version "29.4.3" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.4.3.tgz#9314bc1fabe09267ffeca9cbafc457d8499a13f2" - integrity sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA== - diffie-hellman@^5.0.0: version "5.0.3" resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" @@ -8937,6 +9027,11 @@ eciesjs@^0.3.15: futoin-hkdf "^1.5.3" secp256k1 "^5.0.0" +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== + eip55@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/eip55/-/eip55-2.1.1.tgz#28b743c4701ac3c811b1e9fe67e39cf1d0781b96" @@ -9018,6 +9113,16 @@ encode-utf8@^1.0.3: resolved "https://registry.yarnpkg.com/encode-utf8/-/encode-utf8-1.0.3.tgz#f30fdd31da07fb596f281beb2f6b027851994cda" integrity sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw== +encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== + +encodeurl@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58" + integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg== + encoding@^0.1.13: version "0.1.13" resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" @@ -9435,6 +9540,11 @@ escape-goat@^4.0.0: resolved "https://registry.yarnpkg.com/escape-goat/-/escape-goat-4.0.0.tgz#9424820331b510b0666b98f7873fe11ac4aa8081" integrity sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg== +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== + escape-string-regexp@2.0.0, escape-string-regexp@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" @@ -9781,11 +9891,23 @@ estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0: resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== +estree-walker@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-3.0.3.tgz#67c3e549ec402a487b4fc193d1953a524752340d" + integrity sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g== + dependencies: + "@types/estree" "^1.0.0" + esutils@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== + eth-block-tracker@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/eth-block-tracker/-/eth-block-tracker-7.1.0.tgz#dfc16085c6817cc30caabba381deb8d204c1c766" @@ -10053,6 +10175,43 @@ exponential-backoff@^3.1.1: resolved "https://registry.yarnpkg.com/exponential-backoff/-/exponential-backoff-3.1.1.tgz#64ac7526fe341ab18a39016cd22c787d01e00bf6" integrity sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw== +express@4.21.1: + version "4.21.1" + resolved "https://registry.yarnpkg.com/express/-/express-4.21.1.tgz#9dae5dda832f16b4eec941a4e44aa89ec481b281" + integrity sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ== + dependencies: + accepts "~1.3.8" + array-flatten "1.1.1" + body-parser "1.20.3" + content-disposition "0.5.4" + content-type "~1.0.4" + cookie "0.7.1" + cookie-signature "1.0.6" + debug "2.6.9" + depd "2.0.0" + encodeurl "~2.0.0" + escape-html "~1.0.3" + etag "~1.8.1" + finalhandler "1.3.1" + fresh "0.5.2" + http-errors "2.0.0" + merge-descriptors "1.0.3" + methods "~1.1.2" + on-finished "2.4.1" + parseurl "~1.3.3" + path-to-regexp "0.1.10" + proxy-addr "~2.0.7" + qs "6.13.0" + range-parser "~1.2.1" + safe-buffer "5.2.1" + send "0.19.0" + serve-static "1.16.2" + setprototypeof "1.2.0" + statuses "2.0.1" + type-is "~1.6.18" + utils-merge "1.0.1" + vary "~1.1.2" + extend-shallow@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" @@ -10146,7 +10305,7 @@ fast-fifo@^1.1.0, fast-fifo@^1.2.0: resolved "https://registry.yarnpkg.com/fast-fifo/-/fast-fifo-1.3.0.tgz#03e381bcbfb29932d7c3afde6e15e83e05ab4d8b" integrity sha512-IgfweLvEpwyA4WgiQe9Nx6VV2QkML2NkvZnk1oKnIzXgXdWxuhF7zw4DvLTPZJn6PIUneiAXPF24QmoEqHTjyw== -fast-glob@^3.1.1, fast-glob@^3.2.11, fast-glob@^3.2.9: +fast-glob@^3.2.11, fast-glob@^3.2.9: version "3.2.12" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80" integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w== @@ -10168,6 +10327,17 @@ fast-glob@^3.3.0: merge2 "^1.3.0" micromatch "^4.0.4" +fast-glob@^3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" + integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.4" + fast-json-patch@3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/fast-json-patch/-/fast-json-patch-3.1.1.tgz#85064ea1b1ebf97a3f7ad01e23f9337e72c66947" @@ -10302,6 +10472,19 @@ filter-obj@^1.1.0: resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b" integrity sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ== +finalhandler@1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.3.1.tgz#0c575f1d1d324ddd1da35ad7ece3df7d19088019" + integrity sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ== + dependencies: + debug "2.6.9" + encodeurl "~2.0.0" + escape-html "~1.0.3" + on-finished "2.4.1" + parseurl "~1.3.3" + statuses "2.0.1" + unpipe "~1.0.0" + find-up@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" @@ -10507,6 +10690,11 @@ formdata-polyfill@^4.0.10: dependencies: fetch-blob "^3.1.2" +forwarded@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" + integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== + framer-motion@10.2.3: version "10.2.3" resolved "https://registry.yarnpkg.com/framer-motion/-/framer-motion-10.2.3.tgz#80ac552648f05b707d0595be5e87551aa673689a" @@ -10516,6 +10704,11 @@ framer-motion@10.2.3: optionalDependencies: "@emotion/is-prop-valid" "^0.8.2" +fresh@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== + from@^0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe" @@ -10934,18 +11127,6 @@ globalthis@^1.0.3: dependencies: define-properties "^1.1.3" -globby@11.0.4: - version "11.0.4" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.4.tgz#2cbaff77c2f2a62e71e9b2813a67b97a3a3001a5" - integrity sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg== - dependencies: - array-union "^2.1.0" - dir-glob "^3.0.1" - fast-glob "^3.1.1" - ignore "^5.1.4" - merge2 "^1.3.0" - slash "^3.0.0" - globby@11.1.0, globby@^11.0.3, globby@^11.1.0, globby@^13.1.1: version "11.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" @@ -10958,6 +11139,18 @@ globby@11.1.0, globby@^11.0.3, globby@^11.1.0, globby@^13.1.1: merge2 "^1.4.1" slash "^3.0.0" +globby@14.0.2: + version "14.0.2" + resolved "https://registry.yarnpkg.com/globby/-/globby-14.0.2.tgz#06554a54ccfe9264e5a9ff8eded46aa1e306482f" + integrity sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw== + dependencies: + "@sindresorhus/merge-streams" "^2.1.0" + fast-glob "^3.3.2" + ignore "^5.2.4" + path-type "^5.0.0" + slash "^5.1.0" + unicorn-magic "^0.1.0" + gopd@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" @@ -11371,6 +11564,17 @@ http-cache-semantics@4.1.1, http-cache-semantics@^4.1.0, http-cache-semantics@^4 resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a" integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== +http-errors@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" + integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== + dependencies: + depd "2.0.0" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses "2.0.1" + toidentifier "1.0.1" + http-parser-js@>=0.5.1: version "0.5.8" resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.8.tgz#af23090d9ac4e24573de6f6aecc9d84a48bf20e3" @@ -11511,6 +11715,13 @@ i18next@22.5.1: dependencies: "@babel/runtime" "^7.20.6" +iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@~0.4.13: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + iconv-lite@0.6.3, iconv-lite@^0.6.2, iconv-lite@^0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" @@ -11518,13 +11729,6 @@ iconv-lite@0.6.3, iconv-lite@^0.6.2, iconv-lite@^0.6.3: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -iconv-lite@^0.4.24, iconv-lite@~0.4.13: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - icss-utils@^5.0.0, icss-utils@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" @@ -11552,7 +11756,7 @@ ieee754@^1.1.13, ieee754@^1.1.4, ieee754@^1.2.1: resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== -ignore@^5.0.5, ignore@^5.1.4, ignore@^5.2.0: +ignore@^5.0.5, ignore@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a" integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== @@ -11633,7 +11837,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3, inherits@~2.0.4: +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3, inherits@~2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -11760,6 +11964,11 @@ ip@2.0.1: resolved "https://registry.yarnpkg.com/ip/-/ip-2.0.1.tgz#e8f3595d33a3ea66490204234b77636965307105" integrity sha512-lJUL9imLTNi1ZfXT+DU6rBBdbiKGBuay9B6xGSPVjUeQwaH1RIGqef8RZkUtHioLmSNpPR5M4HVKJGm1j8FWVQ== +ipaddr.js@1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== + iron-webcrypto@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/iron-webcrypto/-/iron-webcrypto-1.1.1.tgz#245c9d467075ee810343ddfa53dd4909616aaf33" @@ -12833,11 +13042,6 @@ json5@2.2.2, json5@^1.0.1, json5@^1.0.2, json5@^2.1.2, json5@^2.2.1: resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.2.tgz#64471c5bdcc564c18f7c1d4df2e2297f2457c5ab" integrity sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ== -jsonc-parser@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76" - integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w== - jsonfile@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" @@ -13249,11 +13453,6 @@ loader-utils@2.0.4, loader-utils@^2.0.0: emojis-list "^3.0.0" json5 "^2.1.2" -local-pkg@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/local-pkg/-/local-pkg-0.4.3.tgz#0ff361ab3ae7f1c19113d9bb97b98b905dbc4963" - integrity sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g== - locate-path@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" @@ -13368,6 +13567,11 @@ loupe@^2.3.6: dependencies: get-func-name "^2.0.0" +loupe@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/loupe/-/loupe-3.1.2.tgz#c86e0696804a02218f2206124c45d8b15291a240" + integrity sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg== + lower-case@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" @@ -13415,12 +13619,12 @@ lz-string@^1.4.4: resolved "https://registry.yarnpkg.com/lz-string/-/lz-string-1.4.4.tgz#c0d8eaf36059f705796e1e344811cf4c498d3a26" integrity sha512-0ckx7ZHRPqb0oUm8zNr+90mtf9DQB60H1wMCjBtfi62Kl3a7JbHob6gA2bC+xRvZoOL+1hzUK8jeuEIQE8svEQ== -magic-string@^0.30.1: - version "0.30.1" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.1.tgz#ce5cd4b0a81a5d032bd69aab4522299b2166284d" - integrity sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA== +magic-string@^0.30.11: + version "0.30.12" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.12.tgz#9eb11c9d072b9bcb4940a5b2c2e1a217e4ee1a60" + integrity sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw== dependencies: - "@jridgewell/sourcemap-codec" "^1.4.15" + "@jridgewell/sourcemap-codec" "^1.5.0" make-color-more-chill@0.2.2: version "0.2.2" @@ -13533,6 +13737,11 @@ media-query-parser@^2.0.2: dependencies: "@babel/runtime" "^7.12.5" +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== + mem@^5.0.0: version "5.1.1" resolved "https://registry.yarnpkg.com/mem/-/mem-5.1.1.tgz#7059b67bf9ac2c924c9f1cff7155a064394adfb3" @@ -13556,6 +13765,11 @@ merge-deep@3.0.3: clone-deep "^0.2.4" kind-of "^3.0.2" +merge-descriptors@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.3.tgz#d80319a65f3c7935351e5cfdac8f9318504dbed5" + integrity sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ== + merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -13571,6 +13785,11 @@ meros@^1.2.1: resolved "https://registry.yarnpkg.com/meros/-/meros-1.3.0.tgz#c617d2092739d55286bf618129280f362e6242f2" integrity sha512-2BNGOimxEz5hmjUG2FwoxCt5HN7BXdaWyFqEwxPTrJzVdABtrL4TiHTcsWSFAxPQ/tOnEaQEJh3qWq71QRMY+w== +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== + micro-ftch@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/micro-ftch/-/micro-ftch-0.3.1.tgz#6cb83388de4c1f279a034fb0cf96dfc050853c5f" @@ -13597,14 +13816,14 @@ mime-db@1.52.0: resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== -mime-types@^2.1.12, mime-types@^2.1.27, mime-types@~2.1.19: +mime-types@^2.1.12, mime-types@^2.1.27, mime-types@~2.1.19, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.35" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== dependencies: mime-db "1.52.0" -mime@^1.3.4: +mime@1.6.0, mime@^1.3.4: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== @@ -13778,16 +13997,6 @@ mkdirp@1.0.4, mkdirp@^1.0.3, mkdirp@^1.0.4, mkdirp@~1.0.4: dependencies: minimist "^1.2.6" -mlly@^1.2.0, mlly@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.4.0.tgz#830c10d63f1f97bd8785377b24dc2a15d972832b" - integrity sha512-ua8PAThnTwpprIaU47EPeZ/bPUVp2QYBbWMphUQpVdBI3Lgqzm5KZQ45Agm3YJedHXaIHl6pBGabaLSUPPSptg== - dependencies: - acorn "^8.9.0" - pathe "^1.1.1" - pkg-types "^1.0.3" - ufo "^1.1.2" - mlly@^1.6.1: version "1.7.0" resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.7.0.tgz#587383ae40dda23cadb11c3c3cc972b277724271" @@ -13863,7 +14072,7 @@ ms@2.1.2: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@2.1.3, ms@^2.0.0, ms@^2.1.1: +ms@2.1.3, ms@^2.0.0, ms@^2.1.1, ms@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -13961,7 +14170,7 @@ ncp@~2.0.0: resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" integrity sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA== -negotiator@^0.6.3: +negotiator@0.6.3, negotiator@^0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== @@ -14237,6 +14446,11 @@ object-inspect@^1.12.3: resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9" integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== +object-inspect@^1.13.1: + version "1.13.2" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.2.tgz#dea0088467fb991e67af4058147a24824a3043ff" + integrity sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g== + object-is@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.6.tgz#1a6a53aed2dd8f7e6775ff870bea58545956ab07" @@ -14364,6 +14578,13 @@ on-exit-leak-free@^2.1.0: resolved "https://registry.yarnpkg.com/on-exit-leak-free/-/on-exit-leak-free-2.1.0.tgz#5c703c968f7e7f851885f6459bf8a8a57edc9cc4" integrity sha512-VuCaZZAjReZ3vUwgOB8LxAosIurDiAW0s13rI1YwmaP++jvcxP77AWoQvenZebpCA2m8WC1/EosPYPMjnRAp/w== +on-finished@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" + integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== + dependencies: + ee-first "1.1.1" + once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" @@ -14545,13 +14766,6 @@ p-limit@^2.0.0, p-limit@^2.2.0: dependencies: p-try "^2.0.0" -p-limit@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-4.0.0.tgz#914af6544ed32bfa54670b061cafcbd04984b644" - integrity sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ== - dependencies: - yocto-queue "^1.0.0" - p-locate@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" @@ -14732,6 +14946,11 @@ parse5@^7.0.0: dependencies: entities "^4.4.0" +parseurl@~1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + pascal-case@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" @@ -14824,7 +15043,12 @@ path-scurry@^1.6.1: lru-cache "^9.1.1 || ^10.0.0" minipass "^5.0.0 || ^6.0.2 || ^7.0.0" -path-to-regexp@6.3.0, path-to-regexp@^6.2.0: +path-to-regexp@0.1.10: + version "0.1.10" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.10.tgz#67e9108c5c0551b9e5326064387de4763c4d5f8b" + integrity sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w== + +path-to-regexp@^6.2.0: version "6.3.0" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.3.0.tgz#2b6a26a337737a8e1416f9272ed0766b1c0389f4" integrity sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ== @@ -14834,7 +15058,12 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -pathe@^1.1.0, pathe@^1.1.1: +path-type@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-5.0.0.tgz#14b01ed7aea7ddf9c7c3f46181d4d04f9c785bb8" + integrity sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg== + +pathe@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.1.1.tgz#1dd31d382b974ba69809adc9a7a347e65d84829a" integrity sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q== @@ -14988,15 +15217,6 @@ pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" -pkg-types@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/pkg-types/-/pkg-types-1.0.3.tgz#988b42ab19254c01614d13f4f65a2cfc7880f868" - integrity sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A== - dependencies: - jsonc-parser "^3.2.0" - mlly "^1.2.0" - pathe "^1.1.0" - pkg-types@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pkg-types/-/pkg-types-1.1.0.tgz#3ec1bf33379030fd0a34c227b6c650e8ea7ca271" @@ -15134,15 +15354,6 @@ pretty-format@^29.2.0: ansi-styles "^5.0.0" react-is "^18.0.0" -pretty-format@^29.5.0: - version "29.6.1" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.6.1.tgz#ec838c288850b7c4f9090b867c2d4f4edbfb0f3e" - integrity sha512-7jRj+yXO0W7e4/tSJKoR7HRIHLPPjtNaUGG2xxKQnGvPNRkgWcQ0AZX6P4KBRJN4FcTBWb3sa7DVUJmocYuoog== - dependencies: - "@jest/schemas" "^29.6.0" - ansi-styles "^5.0.0" - react-is "^18.0.0" - process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" @@ -15223,6 +15434,14 @@ protobufjs@7.2.5, protobufjs@7.4.0, protobufjs@^7.2.5: "@types/node" ">=13.7.0" long "^5.0.0" +proxy-addr@~2.0.7: + version "2.0.7" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" + integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== + dependencies: + forwarded "0.2.0" + ipaddr.js "1.9.1" + proxy-agent@^6.4.0: version "6.4.0" resolved "https://registry.yarnpkg.com/proxy-agent/-/proxy-agent-6.4.0.tgz#b4e2dd51dee2b377748aef8d45604c2d7608652d" @@ -15367,6 +15586,13 @@ qrcode@1.5.3: pngjs "^5.0.0" yargs "^15.3.1" +qs@6.13.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.13.0.tgz#6ca3bd58439f7e245655798997787b0d88a51906" + integrity sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg== + dependencies: + side-channel "^1.0.6" + qs@~6.5.2: version "6.5.3" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" @@ -15449,6 +15675,21 @@ randomfill@^1.0.3: randombytes "^2.0.5" safe-buffer "^5.1.0" +range-parser@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + +raw-body@2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" + integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA== + dependencies: + bytes "3.1.2" + http-errors "2.0.0" + iconv-lite "0.4.24" + unpipe "1.0.0" + rc@1.2.8: version "1.2.8" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" @@ -16126,7 +16367,7 @@ safe-array-concat@^1.0.0: has-symbols "^1.0.3" isarray "^2.0.5" -safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1, safe-buffer@~5.2.0: +safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -16238,6 +16479,25 @@ semver@7.3.8, semver@7.5.2, semver@^5.5.0, semver@^5.6.0, semver@^6.0.0, semver@ dependencies: lru-cache "^6.0.0" +send@0.19.0: + version "0.19.0" + resolved "https://registry.yarnpkg.com/send/-/send-0.19.0.tgz#bbc5a388c8ea6c048967049dbeac0e4a3f09d7f8" + integrity sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw== + dependencies: + debug "2.6.9" + depd "2.0.0" + destroy "1.2.0" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "2.0.0" + mime "1.6.0" + ms "2.1.3" + on-finished "2.4.1" + range-parser "~1.2.1" + statuses "2.0.1" + serialize-javascript@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" @@ -16252,6 +16512,16 @@ serialize-javascript@^6.0.1: dependencies: randombytes "^2.1.0" +serve-static@1.16.2: + version "1.16.2" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.2.tgz#b6a5343da47f6bdd2673848bf45754941e803296" + integrity sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw== + dependencies: + encodeurl "~2.0.0" + escape-html "~1.0.3" + parseurl "~1.3.3" + send "0.19.0" + set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" @@ -16301,6 +16571,11 @@ setimmediate@^1.0.5, setimmediate@~1.0.4: resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== +setprototypeof@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== + sha.js@2.4.11, sha.js@^2.4.0, sha.js@^2.4.11, sha.js@^2.4.8: version "2.4.11" resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" @@ -16376,6 +16651,16 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" +side-channel@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2" + integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA== + dependencies: + call-bind "^1.0.7" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" + object-inspect "^1.13.1" + siginfo@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/siginfo/-/siginfo-2.0.0.tgz#32e76c70b79724e3bb567cb9d543eb858ccfaf30" @@ -16441,6 +16726,11 @@ slash@^3.0.0: resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== +slash@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-5.1.0.tgz#be3adddcdf09ac38eebe8dcdc7b1a57a75b095ce" + integrity sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg== + slice-ansi@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz#31ddc10930a1b7e0b67b08c96c2f49b77a789787" @@ -16671,10 +16961,10 @@ stackback@0.0.2: resolved "https://registry.yarnpkg.com/stackback/-/stackback-0.0.2.tgz#1ac8a0d9483848d1695e418b6d031a3c3ce68e3b" integrity sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw== -std-env@^3.3.3: - version "3.3.3" - resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.3.3.tgz#a54f06eb245fdcfef53d56f3c0251f1d5c3d01fe" - integrity sha512-Rz6yejtVyWnVjC1RFvNmYL10kgjC49EOghxWn0RFqlCHGFpQx+Xe7yW3I4ceK1SGrWIGMjD5Kbue8W/udkbMJg== +statuses@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" + integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== std-env@^3.7.0: version "3.7.0" @@ -16971,13 +17261,6 @@ strip-json-comments@~2.0.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== -strip-literal@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/strip-literal/-/strip-literal-1.0.1.tgz#0115a332710c849b4e46497891fb8d585e404bd2" - integrity sha512-QZTsipNpa2Ppr6v1AmJHESqJ3Uz247MUS0OjrnnZjFAvEoWqxuyFuXn2xLgMtRnijJShAa1HL0gtJyUs7u7n3Q== - dependencies: - acorn "^8.8.2" - subarg@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/subarg/-/subarg-1.0.0.tgz#f62cf17581e996b48fc965699f54c06ae268b8d2" @@ -17197,6 +17480,7 @@ tiny-invariant@^1.0.6: resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.1.tgz#8560808c916ef02ecfd55e66090df23a4b7aa642" integrity sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw== + tiny-secp256k1@^1.1.6: version "1.1.7" resolved "https://registry.yarnpkg.com/tiny-secp256k1/-/tiny-secp256k1-1.1.7.tgz#0c1b6b9d2d93404f9093dc7e287b0aa834480573" @@ -17218,15 +17502,25 @@ tinycolor2@^1.4.1: resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.2.tgz#3f6a4d1071ad07676d7fa472e1fac40a719d8803" integrity sha512-vJhccZPs965sV/L2sU4oRQVAos0pQXwsvTLkWYdqJ+a8Q5kPFzJTuOFwy7UniPli44NKQGAglksjvOcpo95aZA== -tinypool@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-0.7.0.tgz#88053cc99b4a594382af23190c609d93fddf8021" - integrity sha512-zSYNUlYSMhJ6Zdou4cJwo/p7w5nmAH17GRfU/ui3ctvjXFErXXkruT4MWW6poDeXgCaIBlGLrfU6TbTXxyGMww== +tinyexec@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/tinyexec/-/tinyexec-0.3.1.tgz#0ab0daf93b43e2c211212396bdb836b468c97c98" + integrity sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ== -tinyspy@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/tinyspy/-/tinyspy-2.1.1.tgz#9e6371b00c259e5c5b301917ca18c01d40ae558c" - integrity sha512-XPJL2uSzcOyBMky6OFrusqWlzfFrXtE0hPuMgW8A2HmaqrPo4ZQHRN/V0QXN3FSjKxpsbRrFc5LI7KOwBsT1/w== +tinypool@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-1.0.1.tgz#c64233c4fac4304e109a64340178760116dbe1fe" + integrity sha512-URZYihUbRPcGv95En+sz6MfghfIc2OJ1sv/RmhWZLouPY0/8Vo80viwPvg3dlaS9fuq7fQMEfgRRK7BBZThBEA== + +tinyrainbow@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/tinyrainbow/-/tinyrainbow-1.2.0.tgz#5c57d2fc0fb3d1afd78465c33ca885d04f02abb5" + integrity sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ== + +tinyspy@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/tinyspy/-/tinyspy-3.0.2.tgz#86dd3cf3d737b15adcf17d7887c84a75201df20a" + integrity sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q== titleize@^3.0.0: version "3.0.0" @@ -17269,6 +17563,11 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" +toidentifier@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" + integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== + tosource@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/tosource/-/tosource-1.0.0.tgz#42d88dd116618bcf00d6106dd5446f3427902ff1" @@ -17445,6 +17744,14 @@ type-fest@^2.13.0, type-fest@^2.19.0: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.19.0.tgz#88068015bb33036a598b952e55e9311a60fd3a9b" integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA== +type-is@~1.6.18: + version "1.6.18" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== + dependencies: + media-typer "0.3.0" + mime-types "~2.1.24" + typed-array-buffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz#18de3e7ed7974b0a729d3feecb94338d1472cd60" @@ -17605,6 +17912,11 @@ unfetch@^4.2.0: resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-4.2.0.tgz#7e21b0ef7d363d8d9af0fb929a5555f6ef97a3be" integrity sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA== +unicorn-magic@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/unicorn-magic/-/unicorn-magic-0.1.0.tgz#1bb9a51c823aaf9d73a8bfcd3d1a23dde94b0ce4" + integrity sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ== + unique-filename@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-2.0.1.tgz#e785f8675a9a7589e0ac77e0b5c34d2eaeac6da2" @@ -17653,6 +17965,11 @@ unixify@^1.0.0: dependencies: normalize-path "^2.1.1" +unpipe@1.0.0, unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== + unstorage@^1.9.0: version "1.10.2" resolved "https://registry.yarnpkg.com/unstorage/-/unstorage-1.10.2.tgz#fb7590ada8b30e83be9318f85100158b02a76dae" @@ -17874,6 +18191,11 @@ utility-types@^3.10.0: resolved "https://registry.yarnpkg.com/utility-types/-/utility-types-3.10.0.tgz#ea4148f9a741015f05ed74fd615e1d20e6bed82b" integrity sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg== +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== + uuid@^3.3.2: version "3.4.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" @@ -17923,6 +18245,11 @@ value-or-promise@^1.0.11, value-or-promise@^1.0.12: resolved "https://registry.yarnpkg.com/value-or-promise/-/value-or-promise-1.0.12.tgz#0e5abfeec70148c78460a849f6b003ea7986f15c" integrity sha512-Z6Uz+TYwEqE7ZN50gwn+1LCVo9ZVrpxRPOhOLnncYkY1ZzOYtrX8Fwf/rFktZ8R5mJms6EZf5TqNOMeZmnPq9Q== +vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== + varuint-bitcoin@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/varuint-bitcoin/-/varuint-bitcoin-2.0.0.tgz#59a53845a87ad18c42f184a3d325074465341523" @@ -17968,19 +18295,17 @@ viem@2.21.0: webauthn-p256 "0.0.5" ws "8.17.1" -vite-node@0.34.6: - version "0.34.6" - resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-0.34.6.tgz#34d19795de1498562bf21541a58edcd106328a17" - integrity sha512-nlBMJ9x6n7/Amaz6F3zJ97EBwR2FkzhBRxF5e+jE6LA3yi6Wtc2lyTij1OnDMIr34v5g/tVQtsVAzhT0jc5ygA== +vite-node@2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-2.1.3.tgz#8291d31f91c69dc22fea7909f4394c2b3cc2e2d9" + integrity sha512-I1JadzO+xYX887S39Do+paRePCKoiDrWRRjp9kkG5he0t7RXNvPAJPCQSJqbGN4uCrFFeS3Kj3sLqY8NMYBEdA== dependencies: cac "^6.7.14" - debug "^4.3.4" - mlly "^1.4.0" - pathe "^1.1.1" - picocolors "^1.0.0" - vite "^3.0.0 || ^4.0.0 || ^5.0.0-0" + debug "^4.3.6" + pathe "^1.1.2" + vite "^5.0.0" -vite@5.2.14, "vite@^3.0.0 || ^4.0.0 || ^5.0.0-0", "vite@^3.1.0 || ^4.0.0 || ^5.0.0-0": +vite@5.2.14, vite@^5.0.0: version "5.2.14" resolved "https://registry.yarnpkg.com/vite/-/vite-5.2.14.tgz#fd5f60facf6b5f90ec7da6323c467a365d380c3d" integrity sha512-TFQLuwWLPms+NBNlh0D9LZQ+HXW471COABxw/9TEUBrjuHMo9BrYBPrN/SYAwIuVL+rLerycxiLT41t4f5MZpA== @@ -17991,35 +18316,30 @@ vite@5.2.14, "vite@^3.0.0 || ^4.0.0 || ^5.0.0-0", "vite@^3.1.0 || ^4.0.0 || ^5.0 optionalDependencies: fsevents "~2.3.3" -vitest@0.34.6: - version "0.34.6" - resolved "https://registry.yarnpkg.com/vitest/-/vitest-0.34.6.tgz#44880feeeef493c04b7f795ed268f24a543250d7" - integrity sha512-+5CALsOvbNKnS+ZHMXtuUC7nL8/7F1F2DnHGjSsszX8zCjWSSviphCb/NuS9Nzf4Q03KyyDRBAXhF/8lffME4Q== - dependencies: - "@types/chai" "^4.3.5" - "@types/chai-subset" "^1.3.3" - "@types/node" "*" - "@vitest/expect" "0.34.6" - "@vitest/runner" "0.34.6" - "@vitest/snapshot" "0.34.6" - "@vitest/spy" "0.34.6" - "@vitest/utils" "0.34.6" - acorn "^8.9.0" - acorn-walk "^8.2.0" - cac "^6.7.14" - chai "^4.3.10" - debug "^4.3.4" - local-pkg "^0.4.3" - magic-string "^0.30.1" - pathe "^1.1.1" - picocolors "^1.0.0" - std-env "^3.3.3" - strip-literal "^1.0.1" - tinybench "^2.5.0" - tinypool "^0.7.0" - vite "^3.1.0 || ^4.0.0 || ^5.0.0-0" - vite-node "0.34.6" - why-is-node-running "^2.2.2" +vitest@2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/vitest/-/vitest-2.1.3.tgz#dae1055dd328621b59fc6e594fd988fbf2e5370e" + integrity sha512-Zrxbg/WiIvUP2uEzelDNTXmEMJXuzJ1kCpbDvaKByFA9MNeO95V+7r/3ti0qzJzrxdyuUw5VduN7k+D3VmVOSA== + dependencies: + "@vitest/expect" "2.1.3" + "@vitest/mocker" "2.1.3" + "@vitest/pretty-format" "^2.1.3" + "@vitest/runner" "2.1.3" + "@vitest/snapshot" "2.1.3" + "@vitest/spy" "2.1.3" + "@vitest/utils" "2.1.3" + chai "^5.1.1" + debug "^4.3.6" + magic-string "^0.30.11" + pathe "^1.1.2" + std-env "^3.7.0" + tinybench "^2.9.0" + tinyexec "^0.3.0" + tinypool "^1.0.0" + tinyrainbow "^1.2.0" + vite "^5.0.0" + vite-node "2.1.3" + why-is-node-running "^2.3.0" vm-browserify@^1.0.0: version "1.1.2" @@ -18393,10 +18713,10 @@ which@^4.0.0: dependencies: isexe "^3.1.1" -why-is-node-running@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/why-is-node-running/-/why-is-node-running-2.2.2.tgz#4185b2b4699117819e7154594271e7e344c9973e" - integrity sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA== +why-is-node-running@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/why-is-node-running/-/why-is-node-running-2.3.0.tgz#a3f69a97107f494b3cdc3bdddd883a7d65cebf04" + integrity sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w== dependencies: siginfo "^2.0.0" stackback "0.0.2" @@ -18671,11 +18991,6 @@ yocto-queue@^0.1.0: resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== -yocto-queue@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.0.0.tgz#7f816433fb2cbc511ec8bf7d263c3b58a1a3c251" - integrity sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g== - zip-dir@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/zip-dir/-/zip-dir-2.0.0.tgz#c5df6e15c8f9efeb4e320377028c9f5c8277c932"