From 11278f14562a19bd0498ecb5895f30dfb0135787 Mon Sep 17 00:00:00 2001 From: mouseless <97399882+mouseless-eth@users.noreply.github.com> Date: Fri, 20 Sep 2024 16:02:54 +0100 Subject: [PATCH 1/8] add pm_sponsorUserOperation fields --- packages/permissionless/actions/pimlico/getTokenQuotes.ts | 6 +++++- packages/permissionless/types/pimlico.ts | 2 ++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/permissionless/actions/pimlico/getTokenQuotes.ts b/packages/permissionless/actions/pimlico/getTokenQuotes.ts index 59d47b78..0ac308a0 100644 --- a/packages/permissionless/actions/pimlico/getTokenQuotes.ts +++ b/packages/permissionless/actions/pimlico/getTokenQuotes.ts @@ -24,6 +24,8 @@ export type GetTokenQuotesReturnType = { token: Address postOpGas: bigint exchangeRate: bigint + tokenDecimals: number + tokenUsdPrice: number }[] /** @@ -62,6 +64,8 @@ export const getTokenQuotes = async < return res.quotes.map((quote) => ({ ...quote, postOpGas: hexToBigInt(quote.postOpGas), - exchangeRate: hexToBigInt(quote.exchangeRate) + exchangeRate: hexToBigInt(quote.exchangeRate), + tokenDecimals: quote.tokenDecimals, + tokenUsdPrice: quote.tokenUsdPrice })) } diff --git a/packages/permissionless/types/pimlico.ts b/packages/permissionless/types/pimlico.ts index c4ad3094..5c47e959 100644 --- a/packages/permissionless/types/pimlico.ts +++ b/packages/permissionless/types/pimlico.ts @@ -34,6 +34,8 @@ type GetTokenQuotesWithBigIntAsHex = { token: Address postOpGas: Hex exchangeRate: Hex + tokenDecimals: number + tokenUsdPrice: number }[] } From 6cfab3199c3f5a8bf5301b932d8175cfef620a17 Mon Sep 17 00:00:00 2001 From: mouseless <97399882+mouseless-eth@users.noreply.github.com> Date: Fri, 20 Sep 2024 16:05:07 +0100 Subject: [PATCH 2/8] add changeset --- .changeset/real-rabbits-draw.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/real-rabbits-draw.md diff --git a/.changeset/real-rabbits-draw.md b/.changeset/real-rabbits-draw.md new file mode 100644 index 00000000..e7b28f34 --- /dev/null +++ b/.changeset/real-rabbits-draw.md @@ -0,0 +1,5 @@ +--- +"permissionless": patch +--- + +Added tokenDecimals and tokenUsdPrice to pimlico_getTokenQuotes From 51a9d0f83284a6c9493aa03b17f9801d71a25385 Mon Sep 17 00:00:00 2001 From: mouseless <97399882+mouseless-eth@users.noreply.github.com> Date: Fri, 20 Sep 2024 17:02:27 +0100 Subject: [PATCH 3/8] add exchangeRateInUsd --- packages/permissionless/actions/pimlico/getTokenQuotes.ts | 6 ++---- packages/permissionless/types/pimlico.ts | 3 +-- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/packages/permissionless/actions/pimlico/getTokenQuotes.ts b/packages/permissionless/actions/pimlico/getTokenQuotes.ts index 0ac308a0..c9b876b9 100644 --- a/packages/permissionless/actions/pimlico/getTokenQuotes.ts +++ b/packages/permissionless/actions/pimlico/getTokenQuotes.ts @@ -24,8 +24,7 @@ export type GetTokenQuotesReturnType = { token: Address postOpGas: bigint exchangeRate: bigint - tokenDecimals: number - tokenUsdPrice: number + exchangeRateInUsd: number }[] /** @@ -65,7 +64,6 @@ export const getTokenQuotes = async < ...quote, postOpGas: hexToBigInt(quote.postOpGas), exchangeRate: hexToBigInt(quote.exchangeRate), - tokenDecimals: quote.tokenDecimals, - tokenUsdPrice: quote.tokenUsdPrice + exchangeRateInUsd: quote.exchangeRateInUsd })) } diff --git a/packages/permissionless/types/pimlico.ts b/packages/permissionless/types/pimlico.ts index 5c47e959..97b2e191 100644 --- a/packages/permissionless/types/pimlico.ts +++ b/packages/permissionless/types/pimlico.ts @@ -34,8 +34,7 @@ type GetTokenQuotesWithBigIntAsHex = { token: Address postOpGas: Hex exchangeRate: Hex - tokenDecimals: number - tokenUsdPrice: number + exchangeRateInUsd: number }[] } From c863f03671e6bb6b2240eb163ba8ded2bb344f81 Mon Sep 17 00:00:00 2001 From: mouseless <97399882+mouseless-eth@users.noreply.github.com> Date: Fri, 20 Sep 2024 17:10:24 +0100 Subject: [PATCH 4/8] add tokenPriceInUsd --- packages/permissionless/actions/pimlico/getTokenQuotes.ts | 2 ++ packages/permissionless/types/pimlico.ts | 1 + 2 files changed, 3 insertions(+) diff --git a/packages/permissionless/actions/pimlico/getTokenQuotes.ts b/packages/permissionless/actions/pimlico/getTokenQuotes.ts index c9b876b9..6aabfa2e 100644 --- a/packages/permissionless/actions/pimlico/getTokenQuotes.ts +++ b/packages/permissionless/actions/pimlico/getTokenQuotes.ts @@ -24,6 +24,7 @@ export type GetTokenQuotesReturnType = { token: Address postOpGas: bigint exchangeRate: bigint + tokenPriceInUsd: number exchangeRateInUsd: number }[] @@ -64,6 +65,7 @@ export const getTokenQuotes = async < ...quote, postOpGas: hexToBigInt(quote.postOpGas), exchangeRate: hexToBigInt(quote.exchangeRate), + tokenPriceInUsd: quote.tokenPriceInUsd, exchangeRateInUsd: quote.exchangeRateInUsd })) } diff --git a/packages/permissionless/types/pimlico.ts b/packages/permissionless/types/pimlico.ts index 97b2e191..af5d0f2a 100644 --- a/packages/permissionless/types/pimlico.ts +++ b/packages/permissionless/types/pimlico.ts @@ -34,6 +34,7 @@ type GetTokenQuotesWithBigIntAsHex = { token: Address postOpGas: Hex exchangeRate: Hex + tokenPriceInUsd: number exchangeRateInUsd: number }[] } From 9c454c7276ed5d6d09327bc69e134477971ca186 Mon Sep 17 00:00:00 2001 From: mouseless <97399882+mouseless-eth@users.noreply.github.com> Date: Fri, 20 Sep 2024 18:01:26 +0100 Subject: [PATCH 5/8] expose etherUsdExchangeRate --- packages/permissionless/actions/pimlico/getTokenQuotes.ts | 6 +++--- packages/permissionless/types/pimlico.ts | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/permissionless/actions/pimlico/getTokenQuotes.ts b/packages/permissionless/actions/pimlico/getTokenQuotes.ts index 6aabfa2e..5535db3a 100644 --- a/packages/permissionless/actions/pimlico/getTokenQuotes.ts +++ b/packages/permissionless/actions/pimlico/getTokenQuotes.ts @@ -24,8 +24,8 @@ export type GetTokenQuotesReturnType = { token: Address postOpGas: bigint exchangeRate: bigint + etherUsdExchangeRate: bigint tokenPriceInUsd: number - exchangeRateInUsd: number }[] /** @@ -65,7 +65,7 @@ export const getTokenQuotes = async < ...quote, postOpGas: hexToBigInt(quote.postOpGas), exchangeRate: hexToBigInt(quote.exchangeRate), - tokenPriceInUsd: quote.tokenPriceInUsd, - exchangeRateInUsd: quote.exchangeRateInUsd + etherUsdExchangeRate: hexToBigInt(quote.etherUsdExchangeRate), + tokenPriceInUsd: quote.tokenPriceInUsd })) } diff --git a/packages/permissionless/types/pimlico.ts b/packages/permissionless/types/pimlico.ts index af5d0f2a..1fbbcd42 100644 --- a/packages/permissionless/types/pimlico.ts +++ b/packages/permissionless/types/pimlico.ts @@ -34,8 +34,8 @@ type GetTokenQuotesWithBigIntAsHex = { token: Address postOpGas: Hex exchangeRate: Hex + etherUsdExchangeRate: Hex tokenPriceInUsd: number - exchangeRateInUsd: number }[] } From 4ed0a17413285c0290acd5d71690f80f6c4320a4 Mon Sep 17 00:00:00 2001 From: mouseless <97399882+mouseless-eth@users.noreply.github.com> Date: Fri, 20 Sep 2024 19:04:54 +0100 Subject: [PATCH 6/8] expose exchangeRateNativeToUsd --- packages/permissionless/actions/pimlico/getTokenQuotes.ts | 6 ++---- packages/permissionless/types/pimlico.ts | 3 +-- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/packages/permissionless/actions/pimlico/getTokenQuotes.ts b/packages/permissionless/actions/pimlico/getTokenQuotes.ts index 5535db3a..daa6dd18 100644 --- a/packages/permissionless/actions/pimlico/getTokenQuotes.ts +++ b/packages/permissionless/actions/pimlico/getTokenQuotes.ts @@ -24,8 +24,7 @@ export type GetTokenQuotesReturnType = { token: Address postOpGas: bigint exchangeRate: bigint - etherUsdExchangeRate: bigint - tokenPriceInUsd: number + exchangeRateNativeToUsd: bigint }[] /** @@ -65,7 +64,6 @@ export const getTokenQuotes = async < ...quote, postOpGas: hexToBigInt(quote.postOpGas), exchangeRate: hexToBigInt(quote.exchangeRate), - etherUsdExchangeRate: hexToBigInt(quote.etherUsdExchangeRate), - tokenPriceInUsd: quote.tokenPriceInUsd + exchangeRateNativeToUsd: hexToBigInt(quote.exchangeRateNativeToUsd) })) } diff --git a/packages/permissionless/types/pimlico.ts b/packages/permissionless/types/pimlico.ts index 1fbbcd42..8af12de0 100644 --- a/packages/permissionless/types/pimlico.ts +++ b/packages/permissionless/types/pimlico.ts @@ -34,8 +34,7 @@ type GetTokenQuotesWithBigIntAsHex = { token: Address postOpGas: Hex exchangeRate: Hex - etherUsdExchangeRate: Hex - tokenPriceInUsd: number + exchangeRateNativeToUsd: Hex }[] } From b0eb66adc95c2bcbb16fd0282209948e78719a82 Mon Sep 17 00:00:00 2001 From: mouseless <97399882+mouseless-eth@users.noreply.github.com> Date: Fri, 20 Sep 2024 20:36:09 +0100 Subject: [PATCH 7/8] fix failing tests --- .../permissionless-test/mock-aa-infra/mock-paymaster/relay.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/permissionless-test/mock-aa-infra/mock-paymaster/relay.ts b/packages/permissionless-test/mock-aa-infra/mock-paymaster/relay.ts index 7fa46e95..afae5e7d 100644 --- a/packages/permissionless-test/mock-aa-infra/mock-paymaster/relay.ts +++ b/packages/permissionless-test/mock-aa-infra/mock-paymaster/relay.ts @@ -422,6 +422,7 @@ const handleMethod = async ( const quotes = { [getAddress("0xffffffffffffffffffffffffffffffffffffffff")]: { + exchangeRateNativeToToken: "0x5cc717fbb3450c0000000", exchangeRate: "0x5cc717fbb3450c0000", postOpGas: "0xc350" } From a22d6b586d777915354c6b34c14abf64c6d0c306 Mon Sep 17 00:00:00 2001 From: mouseless <97399882+mouseless-eth@users.noreply.github.com> Date: Fri, 20 Sep 2024 20:41:12 +0100 Subject: [PATCH 8/8] fix test --- .../permissionless-test/mock-aa-infra/mock-paymaster/relay.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/permissionless-test/mock-aa-infra/mock-paymaster/relay.ts b/packages/permissionless-test/mock-aa-infra/mock-paymaster/relay.ts index afae5e7d..07852581 100644 --- a/packages/permissionless-test/mock-aa-infra/mock-paymaster/relay.ts +++ b/packages/permissionless-test/mock-aa-infra/mock-paymaster/relay.ts @@ -422,7 +422,7 @@ const handleMethod = async ( const quotes = { [getAddress("0xffffffffffffffffffffffffffffffffffffffff")]: { - exchangeRateNativeToToken: "0x5cc717fbb3450c0000000", + exchangeRateNativeToUsd: "0x5cc717fbb3450c0000000", exchangeRate: "0x5cc717fbb3450c0000", postOpGas: "0xc350" }