@bananapus/nana-sdk-core 6.5.0 → 6.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/dist/cjs/utils/hook.d.ts +13 -0
  2. package/dist/cjs/utils/hook.d.ts.map +1 -1
  3. package/dist/cjs/utils/hook.js +49 -0
  4. package/dist/cjs/utils/hook.js.map +1 -1
  5. package/dist/cjs/v6/cashOut.d.ts +5 -1
  6. package/dist/cjs/v6/cashOut.d.ts.map +1 -1
  7. package/dist/cjs/v6/cashOut.js +14 -2
  8. package/dist/cjs/v6/cashOut.js.map +1 -1
  9. package/dist/cjs/v6/index.d.ts +1 -0
  10. package/dist/cjs/v6/index.d.ts.map +1 -1
  11. package/dist/cjs/v6/index.js +1 -0
  12. package/dist/cjs/v6/index.js.map +1 -1
  13. package/dist/cjs/v6/permit2.d.ts +106 -1
  14. package/dist/cjs/v6/permit2.d.ts.map +1 -1
  15. package/dist/cjs/v6/permit2.js +150 -1
  16. package/dist/cjs/v6/permit2.js.map +1 -1
  17. package/dist/cjs/v6/projectHooks.d.ts +53 -0
  18. package/dist/cjs/v6/projectHooks.d.ts.map +1 -0
  19. package/dist/cjs/v6/projectHooks.js +203 -0
  20. package/dist/cjs/v6/projectHooks.js.map +1 -0
  21. package/dist/cjs/v6/revnets.d.ts +42 -0
  22. package/dist/cjs/v6/revnets.d.ts.map +1 -1
  23. package/dist/cjs/v6/revnets.js +60 -0
  24. package/dist/cjs/v6/revnets.js.map +1 -1
  25. package/dist/cjs/v6/terminals.d.ts +24 -0
  26. package/dist/cjs/v6/terminals.d.ts.map +1 -1
  27. package/dist/cjs/v6/terminals.js +52 -0
  28. package/dist/cjs/v6/terminals.js.map +1 -1
  29. package/dist/esm/utils/hook.d.ts +13 -0
  30. package/dist/esm/utils/hook.d.ts.map +1 -1
  31. package/dist/esm/utils/hook.js +48 -0
  32. package/dist/esm/utils/hook.js.map +1 -1
  33. package/dist/esm/v6/cashOut.d.ts +5 -1
  34. package/dist/esm/v6/cashOut.d.ts.map +1 -1
  35. package/dist/esm/v6/cashOut.js +14 -2
  36. package/dist/esm/v6/cashOut.js.map +1 -1
  37. package/dist/esm/v6/index.d.ts +1 -0
  38. package/dist/esm/v6/index.d.ts.map +1 -1
  39. package/dist/esm/v6/index.js +1 -0
  40. package/dist/esm/v6/index.js.map +1 -1
  41. package/dist/esm/v6/permit2.d.ts +106 -1
  42. package/dist/esm/v6/permit2.d.ts.map +1 -1
  43. package/dist/esm/v6/permit2.js +145 -0
  44. package/dist/esm/v6/permit2.js.map +1 -1
  45. package/dist/esm/v6/projectHooks.d.ts +53 -0
  46. package/dist/esm/v6/projectHooks.d.ts.map +1 -0
  47. package/dist/esm/v6/projectHooks.js +200 -0
  48. package/dist/esm/v6/projectHooks.js.map +1 -0
  49. package/dist/esm/v6/revnets.d.ts +42 -0
  50. package/dist/esm/v6/revnets.d.ts.map +1 -1
  51. package/dist/esm/v6/revnets.js +58 -1
  52. package/dist/esm/v6/revnets.js.map +1 -1
  53. package/dist/esm/v6/terminals.d.ts +24 -0
  54. package/dist/esm/v6/terminals.d.ts.map +1 -1
  55. package/dist/esm/v6/terminals.js +51 -0
  56. package/dist/esm/v6/terminals.js.map +1 -1
  57. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../../../src/utils/hook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,GAAG,EAAkC,MAAM,MAAM,CAAC;AAEpE;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,GAAG,CAKpE;AAuBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,GAAG,CAuC1E"}
1
+ {"version":3,"file":"hook.d.ts","sourceRoot":"","sources":["../../../src/utils/hook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,GAAG,EAAkC,MAAM,MAAM,CAAC;AAEpE;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,GAAG,CAKpE;AAuBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,GAAG,CAuC1E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,GACX,GAAG,CAyCL"}
@@ -89,4 +89,52 @@ export function createHookMetadata(ids, metadatas) {
89
89
  const paddedTable = table.padEnd(Math.ceil(table.length / WORD_CHARS) * WORD_CHARS, "0");
90
90
  return `0x${"0".repeat(WORD_CHARS)}${paddedTable}${payloads.join("")}`;
91
91
  }
92
+ /**
93
+ * Add one `{id: data}` entry to packed hook metadata, as
94
+ * `JBMetadataResolver.addToMetadata` does: the existing entries keep their
95
+ * order and payloads, and the lookup table is rebuilt with the new one last.
96
+ * Every payload must be whole words, as {@link createHookMetadata} packs them:
97
+ * a last payload that is not cannot be told from one that was cut off.
98
+ *
99
+ * @param metadata Packed metadata from {@link createHookMetadata}, or `0x`.
100
+ * @param id The 4-byte lookup id, from {@link hookMetadataId}.
101
+ * @param data The payload for `id`.
102
+ * @link https://github.com/Bananapus/nana-core-v6/blob/main/src/libraries/JBMetadataResolver.sol (`addToMetadata`)
103
+ */
104
+ export function addToHookMetadata(metadata, id, data) {
105
+ const body = hexBody(metadata ?? "0x", "metadata");
106
+ const ids = [];
107
+ const offsets = [];
108
+ // The first entry's offset is where the lookup table ends.
109
+ const idChars = TOTAL_ID_SIZE * 2;
110
+ // Up to one word is the reserved word alone, which is kept, as the contract keeps it.
111
+ const reserved = body.slice(0, WORD_CHARS).padEnd(WORD_CHARS, "0");
112
+ const hasTable = body.length > WORD_CHARS;
113
+ const tableEnd = hasTable
114
+ ? parseInt(body.slice(WORD_CHARS + 8, WORD_CHARS + idChars), 16) *
115
+ WORD_CHARS
116
+ : 0;
117
+ // Repacking pads whatever it is given, which would turn a cut-off payload
118
+ // into a valid one with different values: malformed metadata is refused.
119
+ const malformed = () => new Error("metadata is not well-formed packed hook metadata.");
120
+ if (hasTable &&
121
+ (body.length % WORD_CHARS !== 0 ||
122
+ !(tableEnd >= 2 * WORD_CHARS && tableEnd < body.length)))
123
+ throw malformed();
124
+ for (let i = WORD_CHARS; i + idChars <= tableEnd; i += idChars) {
125
+ const offset = parseInt(body.slice(i + 8, i + idChars), 16) * WORD_CHARS;
126
+ // A zero offset is the table's padding.
127
+ if (!offset)
128
+ break;
129
+ // Each payload starts after the one before it and inside the metadata.
130
+ if (offset <= (offsets[offsets.length - 1] ?? tableEnd - 1) ||
131
+ offset >= body.length)
132
+ throw malformed();
133
+ ids.push(`0x${body.slice(i, i + 8)}`);
134
+ offsets.push(offset);
135
+ }
136
+ const payloads = offsets.map((start, i) => `0x${body.slice(start, offsets[i + 1] ?? body.length)}`);
137
+ const packed = createHookMetadata([...ids, id], [...payloads, data]);
138
+ return `0x${reserved}${packed.slice(2 + WORD_CHARS)}`;
139
+ }
92
140
  //# sourceMappingURL=hook.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hook.js","sourceRoot":"","sources":["../../../src/utils/hook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook.js","sourceRoot":"","sources":["../../../src/utils/hook.ts"],"names":[],"mappings":"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"}
@@ -107,6 +107,9 @@ export interface CashOutQuote {
107
107
  * token. Required to resolve the fee when `cashOutTaxRate` is zero.
108
108
  * @param args.beneficiaryIsFeeless Whether the beneficiary is feeless (pays no
109
109
  * protocol fee). Defaults to false.
110
+ * @param args.revnetFeeApplies Whether the project is a revnet that takes its
111
+ * cash out fee here (`revnetCashOutFeeApplies`). The quote is then for the
112
+ * count left after that fee. Defaults to false.
110
113
  * @returns The raw reclaim amount and, when the fee inputs are resolved, the
111
114
  * amount net of the conditional 2.5% protocol fee.
112
115
  *
@@ -133,7 +136,7 @@ export interface CashOutQuote {
133
136
  * (`tokenCurrencyId(context.token)` with `context.decimals`), which never needs
134
137
  * a feed, and convert for display separately.
135
138
  */
136
- export declare function getCashOutQuote(client: PublicClient, { chainId, projectId, cashOutCount, decimals, currency, cashOutTaxRate, feeFreeSurplus, beneficiaryIsFeeless, }: {
139
+ export declare function getCashOutQuote(client: PublicClient, { chainId, projectId, cashOutCount, decimals, currency, cashOutTaxRate, feeFreeSurplus, beneficiaryIsFeeless, revnetFeeApplies, }: {
137
140
  chainId: JBChainId;
138
141
  projectId: bigint;
139
142
  cashOutCount: bigint;
@@ -142,6 +145,7 @@ export declare function getCashOutQuote(client: PublicClient, { chainId, project
142
145
  cashOutTaxRate?: bigint;
143
146
  feeFreeSurplus?: bigint;
144
147
  beneficiaryIsFeeless?: boolean;
148
+ revnetFeeApplies?: boolean;
145
149
  }): Promise<CashOutQuote>;
146
150
  /**
147
151
  * The default cash-out slippage tolerance, in basis points (1%).
@@ -1 +1 @@
1
- {"version":3,"file":"cashOut.d.ts","sourceRoot":"","sources":["../../../src/v6/cashOut.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cashOut.d.ts","sourceRoot":"","sources":["../../../src/v6/cashOut.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { jbMultiTerminalAbi, jbTerminalStoreAbi, } from "../generated/juicebox.j
3
3
  import { createHookMetadata, hookMetadataId } from "../utils/hook.js";
4
4
  import { NATIVE_TOKEN_CURRENCY_ID } from "./currency.js";
5
5
  import { matchKnownRevert } from "./executionErrors.js";
6
+ import { cashOutCountAfterRevnetFee } from "./revnets.js";
6
7
  import { v6Address, v6Deployments } from "./types.js";
7
8
  import { buildUniswapV4ExactInputSwapTx, quoteUniswapV4ExactInputSingle, uniswapV4SwapDirection, } from "./uniswapV4.js";
8
9
  /**
@@ -93,6 +94,9 @@ export function build721CashOutMetadata({ metadataIdTarget, tokenIds, }) {
93
94
  * token. Required to resolve the fee when `cashOutTaxRate` is zero.
94
95
  * @param args.beneficiaryIsFeeless Whether the beneficiary is feeless (pays no
95
96
  * protocol fee). Defaults to false.
97
+ * @param args.revnetFeeApplies Whether the project is a revnet that takes its
98
+ * cash out fee here (`revnetCashOutFeeApplies`). The quote is then for the
99
+ * count left after that fee. Defaults to false.
96
100
  * @returns The raw reclaim amount and, when the fee inputs are resolved, the
97
101
  * amount net of the conditional 2.5% protocol fee.
98
102
  *
@@ -119,12 +123,20 @@ export function build721CashOutMetadata({ metadataIdTarget, tokenIds, }) {
119
123
  * (`tokenCurrencyId(context.token)` with `context.decimals`), which never needs
120
124
  * a feed, and convert for display separately.
121
125
  */
122
- export async function getCashOutQuote(client, { chainId, projectId, cashOutCount, decimals = 18n, currency = BigInt(NATIVE_TOKEN_CURRENCY_ID), cashOutTaxRate, feeFreeSurplus, beneficiaryIsFeeless = false, }) {
126
+ export async function getCashOutQuote(client, { chainId, projectId, cashOutCount, decimals = 18n, currency = BigInt(NATIVE_TOKEN_CURRENCY_ID), cashOutTaxRate, feeFreeSurplus, beneficiaryIsFeeless = false, revnetFeeApplies = false, }) {
123
127
  const reclaimAmount = await client.readContract({
124
128
  address: v6Address("JBTerminalStore", chainId),
125
129
  abi: jbTerminalStoreAbi,
126
130
  functionName: "currentReclaimableSurplusOf",
127
- args: [projectId, cashOutCount, [], [], decimals, currency],
131
+ args: [
132
+ projectId,
133
+ // The store does not run the revnet's hook, so its fee is taken here.
134
+ cashOutCountAfterRevnetFee(cashOutCount, revnetFeeApplies),
135
+ [],
136
+ [],
137
+ decimals,
138
+ currency,
139
+ ],
128
140
  });
129
141
  return {
130
142
  reclaimAmount,
@@ -1 +1 @@
1
- {"version":3,"file":"cashOut.js","sourceRoot":"","sources":["../../../src/v6/cashOut.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cashOut.js","sourceRoot":"","sources":["../../../src/v6/cashOut.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ export * from "./terminals.js";
11
11
  export * from "./pay.js";
12
12
  export * from "./priceFeeds.js";
13
13
  export * from "./permit2.js";
14
+ export * from "./projectHooks.js";
14
15
  export * from "./projectPayers.js";
15
16
  export * from "./cashOut.js";
16
17
  export { decodePayFailure, PAY_MAX_SLIPPAGE_BPS, payRetrySlippageBps, type PayFailure, type PayFailureAdjustable, type PayFailureReason, } from "./executionErrors.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/v6/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,KAAK,UAAU,EACf,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,KAAK,kBAAkB,EACvB,KAAK,aAAa,GACnB,MAAM,qBAAqB,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/v6/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,KAAK,UAAU,EACf,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,KAAK,kBAAkB,EACvB,KAAK,aAAa,GACnB,MAAM,qBAAqB,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC"}
@@ -11,6 +11,7 @@ export * from "./terminals.js";
11
11
  export * from "./pay.js";
12
12
  export * from "./priceFeeds.js";
13
13
  export * from "./permit2.js";
14
+ export * from "./projectHooks.js";
14
15
  export * from "./projectPayers.js";
15
16
  export * from "./cashOut.js";
16
17
  export { decodePayFailure, PAY_MAX_SLIPPAGE_BPS, payRetrySlippageBps, } from "./executionErrors.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/v6/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,GAIpB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,iBAAiB,GAGlB,MAAM,qBAAqB,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/v6/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,GAIpB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,iBAAiB,GAGlB,MAAM,qBAAqB,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { Address, Hex, PublicClient } from "viem";
1
+ import { type Address, type Hex, type PublicClient } from "viem";
2
2
  import type { JBChainId } from "../types.js";
3
3
  /** Canonical Permit2 deployment shared by supported EVM chains. */
4
4
  export declare const PERMIT2_ADDRESS: `0x${string}`;
@@ -166,4 +166,109 @@ export declare function shouldUsePermit2Signature({ needsApproval, walletLookupS
166
166
  }): boolean;
167
167
  /** Fall back only for wallets that cannot sign typed data, never on rejection. */
168
168
  export declare function permit2SignatureNeedsOnchainFallback(error: unknown): boolean;
169
+ /** How long a signed pay authorization stays usable, matching the swap flows. */
170
+ export declare const PERMIT2_PAY_AUTHORIZATION_SECONDS = 1800;
171
+ /** What an ERC-20 payment to a pay entry still needs from the payer. */
172
+ export interface Permit2PayAuthorization {
173
+ /** The entry's own ERC-20 allowance covers the amount: pay with no authorization. */
174
+ direct: boolean;
175
+ /** The token's allowance for Permit2 is short: one approval of Permit2 comes first. */
176
+ needsTokenApproval: boolean;
177
+ /** The exact, expiring allowance to sign with `signReviewed({ kind: "permit2" })`. */
178
+ authorization: Permit2SignatureAuthorization;
179
+ }
180
+ /**
181
+ * Read what paying `amount` of an ERC-20 into a pay entry needs. The entry is
182
+ * the contract the payer calls: JBMultiTerminal, JBRouterTerminal, its registry
183
+ * or its gateway. Each pulls through its own ERC-20 allowance when that covers
184
+ * the amount, and otherwise through Permit2 with the allowance its pay
185
+ * metadata carries (see {@link addPermit2PayMetadata}).
186
+ *
187
+ * The authorization is for exactly `amount`, to `entry` only, and expires
188
+ * {@link PERMIT2_PAY_AUTHORIZATION_SECONDS} after the chain's latest block.
189
+ */
190
+ export declare function readPermit2PayAuthorization(client: PublicClient, { chainId, owner, token, entry, amount, blockNumber, }: {
191
+ chainId: JBChainId;
192
+ owner: Address;
193
+ token: Address;
194
+ entry: Address;
195
+ amount: bigint;
196
+ /** Read allowances at this block, so an approval just mined is seen on a lagging backend. */
197
+ blockNumber?: bigint;
198
+ }): Promise<Permit2PayAuthorization>;
199
+ /**
200
+ * Add a signed Permit2 allowance to pay metadata, keyed to the entry that
201
+ * spends it. The entry decodes one `JBSingleAllowance` tuple
202
+ * (`sigDeadline, amount, expiration, nonce, signature`), so the payload is a
203
+ * single dynamic tuple, not flat fields.
204
+ *
205
+ * @link https://github.com/Bananapus/nana-core-v6/blob/main/src/structs/JBSingleAllowance.sol
206
+ */
207
+ export declare function addPermit2PayMetadata({ metadata, authorization, signature, }: {
208
+ metadata?: Hex;
209
+ authorization: Permit2SignatureAuthorization;
210
+ signature: Hex;
211
+ }): Hex;
212
+ /** A pay authorization the payer signed, kept while its payment retries. */
213
+ export interface SignedPermit2PayAuthorization {
214
+ /** The account that signed. Permit2 checks the signature against the payer. */
215
+ owner: Address;
216
+ authorization: Permit2SignatureAuthorization;
217
+ signature: Hex;
218
+ }
219
+ /**
220
+ * Whether a signature from an earlier attempt still authorizes this exact
221
+ * payment: the same payer, chain, token, entry, amount and Permit2 nonce as a freshly
222
+ * read authorization, with time left. Permit2 moves the nonce on when an
223
+ * allowance is used, so a spent signature is never reused.
224
+ *
225
+ * @param signed The kept signature, if any.
226
+ * @param fresh From {@link readPermit2PayAuthorization} or {@link planErc20PayAuthorization} now.
227
+ * @param owner The account `fresh` was read for, which pays.
228
+ */
229
+ export declare function permit2PayAuthorizationReusable(signed: SignedPermit2PayAuthorization | null | undefined, fresh: Permit2SignatureAuthorization, owner: Address): signed is SignedPermit2PayAuthorization;
230
+ /** How a payer authorizes an ERC-20 payment to a pay entry. */
231
+ export type Erc20PayAuthorizationPlan =
232
+ /** The entry's own allowance already covers the amount. */
233
+ {
234
+ kind: "none";
235
+ }
236
+ /**
237
+ * A contract wallet (a Safe, or any account with code) approves the entry
238
+ * for the exact amount: it cannot produce the signature Permit2 checks, and
239
+ * its signers can outlast the authorization's deadline.
240
+ */
241
+ | {
242
+ kind: "approve";
243
+ spender: Address;
244
+ amount: bigint;
245
+ }
246
+ /**
247
+ * An EOA signs an exact, expiring Permit2 allowance for the entry. When
248
+ * `needsTokenApproval`, one approval of Permit2 itself comes first.
249
+ */
250
+ | {
251
+ kind: "permit2";
252
+ needsTokenApproval: boolean;
253
+ authorization: Permit2SignatureAuthorization;
254
+ };
255
+ /**
256
+ * Decide how `owner` authorizes paying `amount` of an ERC-20 into a pay entry.
257
+ * One rule for every client: nothing when the entry is already approved, an
258
+ * exact approval of the entry for contract wallets, a Permit2 signature for
259
+ * EOAs. The native token needs no authorization and has no plan; do not call
260
+ * this for it.
261
+ *
262
+ * @param args.isSafe The connected wallet is a Safe (a Safe app or a Safe
263
+ * reached through WalletConnect), whatever its code reads as here.
264
+ */
265
+ export declare function planErc20PayAuthorization(client: PublicClient, { isSafe, ...args }: {
266
+ chainId: JBChainId;
267
+ owner: Address;
268
+ token: Address;
269
+ entry: Address;
270
+ amount: bigint;
271
+ blockNumber?: bigint;
272
+ isSafe: boolean;
273
+ }): Promise<Erc20PayAuthorizationPlan>;
169
274
  //# sourceMappingURL=permit2.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"permit2.d.ts","sourceRoot":"","sources":["../../../src/v6/permit2.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAEvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAM7C,mEAAmE;AACnE,eAAO,MAAM,eAAe,eAA0B,CAAC;AAEvD,gFAAgF;AAChF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4Bb,CAAC;AAEX,wEAAwE;AACxE,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;CAYhB,CAAC;AAEX,MAAM,WAAW,6BAA6B;IAC5C,OAAO,EAAE,SAAS,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,0EAA0E;AAC1E,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoB5E;AAED,qFAAqF;AACrF,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,YAAY,EACpB,EACE,OAAO,EACP,KAAK,EACL,KAAK,EACL,OAAO,GACR,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,OAAO,CAAC,gBAAgB,CAAC,CAe3B;AAED,6EAA6E;AAC7E,wBAAgB,4BAA4B,CAAC,EAC3C,SAAS,EACT,MAAM,EACN,GAAmC,EACnC,uBAA+B,GAChC,EAAE;IACD,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,GAAG,YAAY,CAAC,CAAC;IAC3D,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC,GAAG,OAAO,CAQV;AAED,uFAAuF;AACvF,wBAAsB,oBAAoB,CAAC,EACzC,MAAM,EACN,OAAO,EACP,KAAK,EACL,KAAK,EACL,MAAM,EACN,GAAG,EACH,uBAAuB,GACxB,EAAE;IACD,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,SAAS,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC,GAAG,OAAO,CAAC,OAAO,CAAC,CAanB;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,aAAa,EACb,mBAAmB,EACnB,cAAc,EACd,MAAM,GACP,EAAE;IACD,aAAa,EAAE,OAAO,CAAC;IACvB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,cAAc,CAAC,EAAE,GAAG,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;CACjB,GAAG,OAAO,CAGV;AAED,kFAAkF;AAClF,wBAAgB,oCAAoC,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAgB5E"}
1
+ {"version":3,"file":"permit2.d.ts","sourceRoot":"","sources":["../../../src/v6/permit2.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,OAAO,EACZ,KAAK,GAAG,EACR,KAAK,YAAY,EAClB,MAAM,MAAM,CAAC;AAEd,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAO7C,mEAAmE;AACnE,eAAO,MAAM,eAAe,eAA0B,CAAC;AAEvD,gFAAgF;AAChF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4Bb,CAAC;AAEX,wEAAwE;AACxE,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;CAYhB,CAAC;AAEX,MAAM,WAAW,6BAA6B;IAC5C,OAAO,EAAE,SAAS,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,0EAA0E;AAC1E,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoB5E;AAED,qFAAqF;AACrF,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,YAAY,EACpB,EACE,OAAO,EACP,KAAK,EACL,KAAK,EACL,OAAO,GACR,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,OAAO,CAAC,gBAAgB,CAAC,CAe3B;AAED,6EAA6E;AAC7E,wBAAgB,4BAA4B,CAAC,EAC3C,SAAS,EACT,MAAM,EACN,GAAmC,EACnC,uBAA+B,GAChC,EAAE;IACD,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,GAAG,YAAY,CAAC,CAAC;IAC3D,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC,GAAG,OAAO,CAQV;AAED,uFAAuF;AACvF,wBAAsB,oBAAoB,CAAC,EACzC,MAAM,EACN,OAAO,EACP,KAAK,EACL,KAAK,EACL,MAAM,EACN,GAAG,EACH,uBAAuB,GACxB,EAAE;IACD,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,SAAS,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC,GAAG,OAAO,CAAC,OAAO,CAAC,CAanB;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,aAAa,EACb,mBAAmB,EACnB,cAAc,EACd,MAAM,GACP,EAAE;IACD,aAAa,EAAE,OAAO,CAAC;IACvB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,cAAc,CAAC,EAAE,GAAG,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;CACjB,GAAG,OAAO,CAGV;AAED,kFAAkF;AAClF,wBAAgB,oCAAoC,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAgB5E;AAED,iFAAiF;AACjF,eAAO,MAAM,iCAAiC,OAAQ,CAAC;AAIvD,wEAAwE;AACxE,MAAM,WAAW,uBAAuB;IACtC,qFAAqF;IACrF,MAAM,EAAE,OAAO,CAAC;IAChB,uFAAuF;IACvF,kBAAkB,EAAE,OAAO,CAAC;IAC5B,sFAAsF;IACtF,aAAa,EAAE,6BAA6B,CAAC;CAC9C;AAED;;;;;;;;;GASG;AACH,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,YAAY,EACpB,EACE,OAAO,EACP,KAAK,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,WAAW,GACZ,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,6FAA6F;IAC7F,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GACA,OAAO,CAAC,uBAAuB,CAAC,CA0ClC;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,QAAQ,EACR,aAAa,EACb,SAAS,GACV,EAAE;IACD,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,aAAa,EAAE,6BAA6B,CAAC;IAC7C,SAAS,EAAE,GAAG,CAAC;CAChB,GAAG,GAAG,CA4BN;AAED,4EAA4E;AAC5E,MAAM,WAAW,6BAA6B;IAC5C,+EAA+E;IAC/E,KAAK,EAAE,OAAO,CAAC;IACf,aAAa,EAAE,6BAA6B,CAAC;IAC7C,SAAS,EAAE,GAAG,CAAC;CAChB;AAKD;;;;;;;;;GASG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,6BAA6B,GAAG,IAAI,GAAG,SAAS,EACxD,KAAK,EAAE,6BAA6B,EACpC,KAAK,EAAE,OAAO,GACb,MAAM,IAAI,6BAA6B,CAkBzC;AAED,+DAA+D;AAC/D,MAAM,MAAM,yBAAyB;AACnC,2DAA2D;AACzD;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE;AAClB;;;;GAIG;GACD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AACvD;;;GAGG;GACD;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,aAAa,EAAE,6BAA6B,CAAC;CAC9C,CAAC;AAEN;;;;;;;;;GASG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,YAAY,EACpB,EACE,MAAM,EACN,GAAG,IAAI,EACR,EAAE;IACD,OAAO,EAAE,SAAS,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;CACjB,GACA,OAAO,CAAC,yBAAyB,CAAC,CAkBpC"}
@@ -1,4 +1,6 @@
1
+ import { encodeAbiParameters, erc20Abi, } from "viem";
1
2
  import { NATIVE_TOKEN } from "../constants.js";
3
+ import { addToHookMetadata, hookMetadataId } from "../utils/hook.js";
2
4
  import { UNISWAP_PERMIT2_ADDRESS, uniswapV4Deployment, } from "./uniswapV4Deployments.js";
3
5
  /** Canonical Permit2 deployment shared by supported EVM chains. */
4
6
  export const PERMIT2_ADDRESS = UNISWAP_PERMIT2_ADDRESS;
@@ -133,4 +135,147 @@ export function permit2SignatureNeedsOnchainFallback(error) {
133
135
  return false;
134
136
  return /(^|\s)-32602(\s|$)|(^|\s)-32601(\s|$)|(^|\s)4200(\s|$)|invalid parameters|method .*not supported|unsupported method|typed data.*not supported/.test(text);
135
137
  }
138
+ /** How long a signed pay authorization stays usable, matching the swap flows. */
139
+ export const PERMIT2_PAY_AUTHORIZATION_SECONDS = 1_800;
140
+ const MAX_UINT160 = (1n << 160n) - 1n;
141
+ /**
142
+ * Read what paying `amount` of an ERC-20 into a pay entry needs. The entry is
143
+ * the contract the payer calls: JBMultiTerminal, JBRouterTerminal, its registry
144
+ * or its gateway. Each pulls through its own ERC-20 allowance when that covers
145
+ * the amount, and otherwise through Permit2 with the allowance its pay
146
+ * metadata carries (see {@link addPermit2PayMetadata}).
147
+ *
148
+ * The authorization is for exactly `amount`, to `entry` only, and expires
149
+ * {@link PERMIT2_PAY_AUTHORIZATION_SECONDS} after the chain's latest block.
150
+ */
151
+ export async function readPermit2PayAuthorization(client, { chainId, owner, token, entry, amount, blockNumber, }) {
152
+ if (amount <= 0n || amount > MAX_UINT160) {
153
+ throw new Error("The payment amount is outside Permit2's uint160 range.");
154
+ }
155
+ const allowanceFor = (spender) => client.readContract({
156
+ address: token,
157
+ abi: erc20Abi,
158
+ functionName: "allowance",
159
+ args: [owner, spender],
160
+ blockNumber,
161
+ });
162
+ const [direct, permit2Token, [, , nonce], block] = await Promise.all([
163
+ allowanceFor(entry),
164
+ allowanceFor(PERMIT2_ADDRESS),
165
+ client.readContract({
166
+ address: PERMIT2_ADDRESS,
167
+ abi: permit2Abi,
168
+ functionName: "allowance",
169
+ args: [owner, token, entry],
170
+ blockNumber,
171
+ }),
172
+ client.getBlock({ blockTag: "latest" }),
173
+ ]);
174
+ const now = Number(block.timestamp);
175
+ if (!Number.isSafeInteger(now) || now <= 0) {
176
+ throw new Error("Could not read the chain's time for the authorization.");
177
+ }
178
+ const deadline = now + PERMIT2_PAY_AUTHORIZATION_SECONDS;
179
+ return {
180
+ direct: direct >= amount,
181
+ needsTokenApproval: permit2Token < amount,
182
+ authorization: {
183
+ chainId,
184
+ token,
185
+ spender: entry,
186
+ amount,
187
+ expiration: deadline,
188
+ nonce,
189
+ sigDeadline: BigInt(deadline),
190
+ },
191
+ };
192
+ }
193
+ /**
194
+ * Add a signed Permit2 allowance to pay metadata, keyed to the entry that
195
+ * spends it. The entry decodes one `JBSingleAllowance` tuple
196
+ * (`sigDeadline, amount, expiration, nonce, signature`), so the payload is a
197
+ * single dynamic tuple, not flat fields.
198
+ *
199
+ * @link https://github.com/Bananapus/nana-core-v6/blob/main/src/structs/JBSingleAllowance.sol
200
+ */
201
+ export function addPermit2PayMetadata({ metadata, authorization, signature, }) {
202
+ return addToHookMetadata(metadata, hookMetadataId(authorization.spender, "permit2"), encodeAbiParameters([
203
+ {
204
+ type: "tuple",
205
+ components: [
206
+ { name: "sigDeadline", type: "uint256" },
207
+ { name: "amount", type: "uint160" },
208
+ { name: "expiration", type: "uint48" },
209
+ { name: "nonce", type: "uint48" },
210
+ { name: "signature", type: "bytes" },
211
+ ],
212
+ },
213
+ ], [
214
+ {
215
+ sigDeadline: authorization.sigDeadline,
216
+ amount: authorization.amount,
217
+ expiration: authorization.expiration,
218
+ nonce: authorization.nonce,
219
+ signature,
220
+ },
221
+ ]));
222
+ }
223
+ /** A signed pay authorization this close to its deadline is signed again. */
224
+ const PERMIT2_PAY_REUSE_MARGIN_SECONDS = 120;
225
+ /**
226
+ * Whether a signature from an earlier attempt still authorizes this exact
227
+ * payment: the same payer, chain, token, entry, amount and Permit2 nonce as a freshly
228
+ * read authorization, with time left. Permit2 moves the nonce on when an
229
+ * allowance is used, so a spent signature is never reused.
230
+ *
231
+ * @param signed The kept signature, if any.
232
+ * @param fresh From {@link readPermit2PayAuthorization} or {@link planErc20PayAuthorization} now.
233
+ * @param owner The account `fresh` was read for, which pays.
234
+ */
235
+ export function permit2PayAuthorizationReusable(signed, fresh, owner) {
236
+ if (!signed)
237
+ return false;
238
+ const was = signed.authorization;
239
+ return (signed.owner.toLowerCase() === owner.toLowerCase() &&
240
+ was.chainId === fresh.chainId &&
241
+ was.token.toLowerCase() === fresh.token.toLowerCase() &&
242
+ was.spender.toLowerCase() === fresh.spender.toLowerCase() &&
243
+ was.amount === fresh.amount &&
244
+ was.nonce === fresh.nonce &&
245
+ // A fresh authorization expires a fixed time after the chain's latest
246
+ // block, so this compares against chain time.
247
+ was.sigDeadline >=
248
+ fresh.sigDeadline -
249
+ BigInt(PERMIT2_PAY_AUTHORIZATION_SECONDS - PERMIT2_PAY_REUSE_MARGIN_SECONDS));
250
+ }
251
+ /**
252
+ * Decide how `owner` authorizes paying `amount` of an ERC-20 into a pay entry.
253
+ * One rule for every client: nothing when the entry is already approved, an
254
+ * exact approval of the entry for contract wallets, a Permit2 signature for
255
+ * EOAs. The native token needs no authorization and has no plan; do not call
256
+ * this for it.
257
+ *
258
+ * @param args.isSafe The connected wallet is a Safe (a Safe app or a Safe
259
+ * reached through WalletConnect), whatever its code reads as here.
260
+ */
261
+ export async function planErc20PayAuthorization(client, { isSafe, ...args }) {
262
+ const [read, walletBytecode] = await Promise.all([
263
+ readPermit2PayAuthorization(client, args),
264
+ client.getCode({ address: args.owner }),
265
+ ]);
266
+ if (read.direct)
267
+ return { kind: "none" };
268
+ return shouldUsePermit2Signature({
269
+ needsApproval: true,
270
+ walletLookupSettled: true,
271
+ walletBytecode,
272
+ isSafe,
273
+ })
274
+ ? {
275
+ kind: "permit2",
276
+ needsTokenApproval: read.needsTokenApproval,
277
+ authorization: read.authorization,
278
+ }
279
+ : { kind: "approve", spender: args.entry, amount: args.amount };
280
+ }
136
281
  //# sourceMappingURL=permit2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"permit2.js","sourceRoot":"","sources":["../../../src/v6/permit2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permit2.js","sourceRoot":"","sources":["../../../src/v6/permit2.ts"],"names":[],"mappings":"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"}