@pafi-dev/core 0.1.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 (104) hide show
  1. package/README.md +1157 -0
  2. package/dist/abi/index.cjs +31 -0
  3. package/dist/abi/index.cjs.map +1 -0
  4. package/dist/abi/index.d.cts +2479 -0
  5. package/dist/abi/index.d.ts +2479 -0
  6. package/dist/abi/index.js +31 -0
  7. package/dist/abi/index.js.map +1 -0
  8. package/dist/auth/index.cjs +11 -0
  9. package/dist/auth/index.cjs.map +1 -0
  10. package/dist/auth/index.d.cts +60 -0
  11. package/dist/auth/index.d.ts +60 -0
  12. package/dist/auth/index.js +11 -0
  13. package/dist/auth/index.js.map +1 -0
  14. package/dist/chunk-27V32VNM.cjs +370 -0
  15. package/dist/chunk-27V32VNM.cjs.map +1 -0
  16. package/dist/chunk-2PIXFXA2.js +135 -0
  17. package/dist/chunk-2PIXFXA2.js.map +1 -0
  18. package/dist/chunk-37BBGXTS.js +149 -0
  19. package/dist/chunk-37BBGXTS.js.map +1 -0
  20. package/dist/chunk-4QOWQQCH.cjs +99 -0
  21. package/dist/chunk-4QOWQQCH.cjs.map +1 -0
  22. package/dist/chunk-4RYBJLF3.js +370 -0
  23. package/dist/chunk-4RYBJLF3.js.map +1 -0
  24. package/dist/chunk-5QJZT7VB.cjs +46 -0
  25. package/dist/chunk-5QJZT7VB.cjs.map +1 -0
  26. package/dist/chunk-5YH4D7QF.js +467 -0
  27. package/dist/chunk-5YH4D7QF.js.map +1 -0
  28. package/dist/chunk-BNTVOKYT.cjs +101 -0
  29. package/dist/chunk-BNTVOKYT.cjs.map +1 -0
  30. package/dist/chunk-C4ZDYG4D.js +101 -0
  31. package/dist/chunk-C4ZDYG4D.js.map +1 -0
  32. package/dist/chunk-CAE2BVKI.cjs +136 -0
  33. package/dist/chunk-CAE2BVKI.cjs.map +1 -0
  34. package/dist/chunk-CL3QSI4O.cjs +65 -0
  35. package/dist/chunk-CL3QSI4O.cjs.map +1 -0
  36. package/dist/chunk-CWP4PFOP.cjs +72 -0
  37. package/dist/chunk-CWP4PFOP.cjs.map +1 -0
  38. package/dist/chunk-DSCUHT3F.js +99 -0
  39. package/dist/chunk-DSCUHT3F.js.map +1 -0
  40. package/dist/chunk-FGKLDKJK.cjs +467 -0
  41. package/dist/chunk-FGKLDKJK.cjs.map +1 -0
  42. package/dist/chunk-FIKTQR7H.js +136 -0
  43. package/dist/chunk-FIKTQR7H.js.map +1 -0
  44. package/dist/chunk-FXNG4G22.js +2041 -0
  45. package/dist/chunk-FXNG4G22.js.map +1 -0
  46. package/dist/chunk-GWLEEXM4.cjs +163 -0
  47. package/dist/chunk-GWLEEXM4.cjs.map +1 -0
  48. package/dist/chunk-IPXARZ6F.cjs +135 -0
  49. package/dist/chunk-IPXARZ6F.cjs.map +1 -0
  50. package/dist/chunk-KFWZRL7I.js +65 -0
  51. package/dist/chunk-KFWZRL7I.js.map +1 -0
  52. package/dist/chunk-KW6M5FXY.js +129 -0
  53. package/dist/chunk-KW6M5FXY.js.map +1 -0
  54. package/dist/chunk-MEREIEE4.cjs +129 -0
  55. package/dist/chunk-MEREIEE4.cjs.map +1 -0
  56. package/dist/chunk-O4SMTUOY.js +163 -0
  57. package/dist/chunk-O4SMTUOY.js.map +1 -0
  58. package/dist/chunk-O7LQKCBT.cjs +149 -0
  59. package/dist/chunk-O7LQKCBT.cjs.map +1 -0
  60. package/dist/chunk-P56TUGTS.js +46 -0
  61. package/dist/chunk-P56TUGTS.js.map +1 -0
  62. package/dist/chunk-R4L66ZR5.js +72 -0
  63. package/dist/chunk-R4L66ZR5.js.map +1 -0
  64. package/dist/chunk-S2XRFFP3.cjs +2041 -0
  65. package/dist/chunk-S2XRFFP3.cjs.map +1 -0
  66. package/dist/contract/index.cjs +27 -0
  67. package/dist/contract/index.cjs.map +1 -0
  68. package/dist/contract/index.d.cts +18 -0
  69. package/dist/contract/index.d.ts +18 -0
  70. package/dist/contract/index.js +27 -0
  71. package/dist/contract/index.js.map +1 -0
  72. package/dist/eip712/index.cjs +20 -0
  73. package/dist/eip712/index.cjs.map +1 -0
  74. package/dist/eip712/index.d.cts +83 -0
  75. package/dist/eip712/index.d.ts +83 -0
  76. package/dist/eip712/index.js +20 -0
  77. package/dist/eip712/index.js.map +1 -0
  78. package/dist/index.cjs +412 -0
  79. package/dist/index.cjs.map +1 -0
  80. package/dist/index.d.cts +239 -0
  81. package/dist/index.d.ts +239 -0
  82. package/dist/index.js +412 -0
  83. package/dist/index.js.map +1 -0
  84. package/dist/quoting/index.cjs +19 -0
  85. package/dist/quoting/index.cjs.map +1 -0
  86. package/dist/quoting/index.d.cts +59 -0
  87. package/dist/quoting/index.d.ts +59 -0
  88. package/dist/quoting/index.js +19 -0
  89. package/dist/quoting/index.js.map +1 -0
  90. package/dist/relay/index.cjs +19 -0
  91. package/dist/relay/index.cjs.map +1 -0
  92. package/dist/relay/index.d.cts +62 -0
  93. package/dist/relay/index.d.ts +62 -0
  94. package/dist/relay/index.js +19 -0
  95. package/dist/relay/index.js.map +1 -0
  96. package/dist/swap/index.cjs +29 -0
  97. package/dist/swap/index.cjs.map +1 -0
  98. package/dist/swap/index.d.cts +79 -0
  99. package/dist/swap/index.d.ts +79 -0
  100. package/dist/swap/index.js +29 -0
  101. package/dist/swap/index.js.map +1 -0
  102. package/dist/types-CkRJzrZr.d.cts +98 -0
  103. package/dist/types-CkRJzrZr.d.ts +98 -0
  104. package/package.json +114 -0
@@ -0,0 +1,31 @@
1
+ import {
2
+ pointTokenFactoryAbi
3
+ } from "../chunk-5YH4D7QF.js";
4
+ import {
5
+ issuerRegistryAbi,
6
+ mintingOracleAbi,
7
+ pointTokenAbi
8
+ } from "../chunk-FXNG4G22.js";
9
+ import {
10
+ v4QuoterAbi
11
+ } from "../chunk-KFWZRL7I.js";
12
+ import {
13
+ erc20Abi,
14
+ permit2Abi,
15
+ universalRouterAbi
16
+ } from "../chunk-2PIXFXA2.js";
17
+ import {
18
+ relayAbi
19
+ } from "../chunk-4RYBJLF3.js";
20
+ export {
21
+ erc20Abi,
22
+ issuerRegistryAbi,
23
+ mintingOracleAbi,
24
+ permit2Abi,
25
+ pointTokenAbi,
26
+ pointTokenFactoryAbi,
27
+ relayAbi,
28
+ universalRouterAbi,
29
+ v4QuoterAbi
30
+ };
31
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,11 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+ var _chunkGWLEEXM4cjs = require('../chunk-GWLEEXM4.cjs');
6
+
7
+
8
+
9
+
10
+ exports.createLoginMessage = _chunkGWLEEXM4cjs.createLoginMessage; exports.parseLoginMessage = _chunkGWLEEXM4cjs.parseLoginMessage; exports.verifyLoginMessage = _chunkGWLEEXM4cjs.verifyLoginMessage;
11
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/phitran/Pacific-Finance/pafi-backend/pafi-sdk/packages/core/dist/auth/index.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACF,yDAA8B;AAC9B;AACE;AACA;AACA;AACF,sMAAC","file":"/Users/phitran/Pacific-Finance/pafi-backend/pafi-sdk/packages/core/dist/auth/index.cjs"}
@@ -0,0 +1,60 @@
1
+ import { Address, Hex } from 'viem';
2
+
3
+ /**
4
+ * Parameters for building an EIP-4361 (Sign-In with Ethereum) login message.
5
+ *
6
+ * The message format follows https://eips.ethereum.org/EIPS/eip-4361 with
7
+ * the fields the issuer backend needs to verify a wallet-based login.
8
+ */
9
+ interface LoginMessageParams {
10
+ /** Origin domain that is requesting the signature, e.g. "app.example.com" */
11
+ domain: string;
12
+ /** Wallet address performing the login */
13
+ address: Address;
14
+ /** Target chain id */
15
+ chainId: number;
16
+ /** Server-issued nonce (must be consumed once on the backend) */
17
+ nonce: string;
18
+ /** Resource URI that is requesting the signature, e.g. "https://app.example.com" */
19
+ uri: string;
20
+ /** Optional human-readable statement shown to the user */
21
+ statement?: string;
22
+ /** Optional version field (defaults to "1") */
23
+ version?: string;
24
+ /** Optional issued-at timestamp (defaults to now) */
25
+ issuedAt?: Date;
26
+ /** Optional expiration time after which the message must be rejected */
27
+ expirationTime?: Date;
28
+ /** Optional not-before time before which the message must be rejected */
29
+ notBefore?: Date;
30
+ /** Optional opaque request id used for correlation */
31
+ requestId?: string;
32
+ }
33
+ interface VerifyLoginResult {
34
+ valid: boolean;
35
+ address: Address;
36
+ }
37
+
38
+ /**
39
+ * Build an EIP-4361 login message string.
40
+ *
41
+ * The output is a deterministic plain-text message that the wallet signs via
42
+ * `personal_sign`. The same message can be parsed back with
43
+ * {@link parseLoginMessage} and verified with {@link verifyLoginMessage}.
44
+ */
45
+ declare function createLoginMessage(params: LoginMessageParams): string;
46
+ /**
47
+ * Parse a login message string built by {@link createLoginMessage} back into
48
+ * its structured fields. Throws if the message does not match the expected
49
+ * EIP-4361 layout.
50
+ */
51
+ declare function parseLoginMessage(message: string): LoginMessageParams;
52
+ /**
53
+ * Verify that a login message was signed by the address embedded in the
54
+ * message. Returns `{ valid, address }` where `address` is the recovered
55
+ * signer (checksummed). Does NOT check expiration / not-before / nonce
56
+ * consumption — those are the AuthService's responsibility.
57
+ */
58
+ declare function verifyLoginMessage(message: string, signature: Hex): Promise<VerifyLoginResult>;
59
+
60
+ export { type LoginMessageParams, type VerifyLoginResult, createLoginMessage, parseLoginMessage, verifyLoginMessage };
@@ -0,0 +1,60 @@
1
+ import { Address, Hex } from 'viem';
2
+
3
+ /**
4
+ * Parameters for building an EIP-4361 (Sign-In with Ethereum) login message.
5
+ *
6
+ * The message format follows https://eips.ethereum.org/EIPS/eip-4361 with
7
+ * the fields the issuer backend needs to verify a wallet-based login.
8
+ */
9
+ interface LoginMessageParams {
10
+ /** Origin domain that is requesting the signature, e.g. "app.example.com" */
11
+ domain: string;
12
+ /** Wallet address performing the login */
13
+ address: Address;
14
+ /** Target chain id */
15
+ chainId: number;
16
+ /** Server-issued nonce (must be consumed once on the backend) */
17
+ nonce: string;
18
+ /** Resource URI that is requesting the signature, e.g. "https://app.example.com" */
19
+ uri: string;
20
+ /** Optional human-readable statement shown to the user */
21
+ statement?: string;
22
+ /** Optional version field (defaults to "1") */
23
+ version?: string;
24
+ /** Optional issued-at timestamp (defaults to now) */
25
+ issuedAt?: Date;
26
+ /** Optional expiration time after which the message must be rejected */
27
+ expirationTime?: Date;
28
+ /** Optional not-before time before which the message must be rejected */
29
+ notBefore?: Date;
30
+ /** Optional opaque request id used for correlation */
31
+ requestId?: string;
32
+ }
33
+ interface VerifyLoginResult {
34
+ valid: boolean;
35
+ address: Address;
36
+ }
37
+
38
+ /**
39
+ * Build an EIP-4361 login message string.
40
+ *
41
+ * The output is a deterministic plain-text message that the wallet signs via
42
+ * `personal_sign`. The same message can be parsed back with
43
+ * {@link parseLoginMessage} and verified with {@link verifyLoginMessage}.
44
+ */
45
+ declare function createLoginMessage(params: LoginMessageParams): string;
46
+ /**
47
+ * Parse a login message string built by {@link createLoginMessage} back into
48
+ * its structured fields. Throws if the message does not match the expected
49
+ * EIP-4361 layout.
50
+ */
51
+ declare function parseLoginMessage(message: string): LoginMessageParams;
52
+ /**
53
+ * Verify that a login message was signed by the address embedded in the
54
+ * message. Returns `{ valid, address }` where `address` is the recovered
55
+ * signer (checksummed). Does NOT check expiration / not-before / nonce
56
+ * consumption — those are the AuthService's responsibility.
57
+ */
58
+ declare function verifyLoginMessage(message: string, signature: Hex): Promise<VerifyLoginResult>;
59
+
60
+ export { type LoginMessageParams, type VerifyLoginResult, createLoginMessage, parseLoginMessage, verifyLoginMessage };
@@ -0,0 +1,11 @@
1
+ import {
2
+ createLoginMessage,
3
+ parseLoginMessage,
4
+ verifyLoginMessage
5
+ } from "../chunk-O4SMTUOY.js";
6
+ export {
7
+ createLoginMessage,
8
+ parseLoginMessage,
9
+ verifyLoginMessage
10
+ };
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,370 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/abi/relay.ts
2
+ var relayAbi = [
3
+ {
4
+ "type": "constructor",
5
+ "inputs": [
6
+ {
7
+ "name": "initialOwner",
8
+ "type": "address",
9
+ "internalType": "address"
10
+ },
11
+ {
12
+ "name": "_poolManager",
13
+ "type": "address",
14
+ "internalType": "address"
15
+ },
16
+ {
17
+ "name": "_usdt",
18
+ "type": "address",
19
+ "internalType": "address"
20
+ }
21
+ ],
22
+ "stateMutability": "nonpayable"
23
+ },
24
+ {
25
+ "type": "function",
26
+ "name": "acceptOwnership",
27
+ "inputs": [],
28
+ "outputs": [],
29
+ "stateMutability": "nonpayable"
30
+ },
31
+ {
32
+ "type": "function",
33
+ "name": "mintAndSwap",
34
+ "inputs": [
35
+ {
36
+ "name": "mint",
37
+ "type": "tuple",
38
+ "internalType": "struct Relay.MintParams",
39
+ "components": [
40
+ {
41
+ "name": "pointToken",
42
+ "type": "address",
43
+ "internalType": "address"
44
+ },
45
+ {
46
+ "name": "receiver",
47
+ "type": "address",
48
+ "internalType": "address"
49
+ },
50
+ {
51
+ "name": "amount",
52
+ "type": "uint256",
53
+ "internalType": "uint256"
54
+ },
55
+ {
56
+ "name": "deadline",
57
+ "type": "uint256",
58
+ "internalType": "uint256"
59
+ },
60
+ {
61
+ "name": "minterSig",
62
+ "type": "bytes",
63
+ "internalType": "bytes"
64
+ },
65
+ {
66
+ "name": "receiverSig",
67
+ "type": "bytes",
68
+ "internalType": "bytes"
69
+ },
70
+ {
71
+ "name": "extData",
72
+ "type": "bytes",
73
+ "internalType": "bytes"
74
+ }
75
+ ]
76
+ },
77
+ {
78
+ "name": "swap",
79
+ "type": "tuple",
80
+ "internalType": "struct Relay.SwapParams",
81
+ "components": [
82
+ {
83
+ "name": "path",
84
+ "type": "tuple[]",
85
+ "internalType": "struct Relay.PathKey[]",
86
+ "components": [
87
+ {
88
+ "name": "intermediateCurrency",
89
+ "type": "address",
90
+ "internalType": "address"
91
+ },
92
+ {
93
+ "name": "fee",
94
+ "type": "uint24",
95
+ "internalType": "uint24"
96
+ },
97
+ {
98
+ "name": "tickSpacing",
99
+ "type": "int24",
100
+ "internalType": "int24"
101
+ },
102
+ {
103
+ "name": "hooks",
104
+ "type": "address",
105
+ "internalType": "address"
106
+ },
107
+ {
108
+ "name": "hookData",
109
+ "type": "bytes",
110
+ "internalType": "bytes"
111
+ }
112
+ ]
113
+ },
114
+ {
115
+ "name": "deadline",
116
+ "type": "uint256",
117
+ "internalType": "uint256"
118
+ }
119
+ ]
120
+ }
121
+ ],
122
+ "outputs": [],
123
+ "stateMutability": "nonpayable"
124
+ },
125
+ {
126
+ "type": "function",
127
+ "name": "owner",
128
+ "inputs": [],
129
+ "outputs": [
130
+ {
131
+ "name": "",
132
+ "type": "address",
133
+ "internalType": "address"
134
+ }
135
+ ],
136
+ "stateMutability": "view"
137
+ },
138
+ {
139
+ "type": "function",
140
+ "name": "pendingOwner",
141
+ "inputs": [],
142
+ "outputs": [
143
+ {
144
+ "name": "",
145
+ "type": "address",
146
+ "internalType": "address"
147
+ }
148
+ ],
149
+ "stateMutability": "view"
150
+ },
151
+ {
152
+ "type": "function",
153
+ "name": "poolManager",
154
+ "inputs": [],
155
+ "outputs": [
156
+ {
157
+ "name": "",
158
+ "type": "address",
159
+ "internalType": "address"
160
+ }
161
+ ],
162
+ "stateMutability": "view"
163
+ },
164
+ {
165
+ "type": "function",
166
+ "name": "renounceOwnership",
167
+ "inputs": [],
168
+ "outputs": [],
169
+ "stateMutability": "nonpayable"
170
+ },
171
+ {
172
+ "type": "function",
173
+ "name": "transferOwnership",
174
+ "inputs": [
175
+ {
176
+ "name": "newOwner",
177
+ "type": "address",
178
+ "internalType": "address"
179
+ }
180
+ ],
181
+ "outputs": [],
182
+ "stateMutability": "nonpayable"
183
+ },
184
+ {
185
+ "type": "function",
186
+ "name": "unlockCallback",
187
+ "inputs": [
188
+ {
189
+ "name": "data",
190
+ "type": "bytes",
191
+ "internalType": "bytes"
192
+ }
193
+ ],
194
+ "outputs": [
195
+ {
196
+ "name": "",
197
+ "type": "bytes",
198
+ "internalType": "bytes"
199
+ }
200
+ ],
201
+ "stateMutability": "nonpayable"
202
+ },
203
+ {
204
+ "type": "function",
205
+ "name": "usdt",
206
+ "inputs": [],
207
+ "outputs": [
208
+ {
209
+ "name": "",
210
+ "type": "address",
211
+ "internalType": "address"
212
+ }
213
+ ],
214
+ "stateMutability": "view"
215
+ },
216
+ {
217
+ "type": "event",
218
+ "name": "MintAndSwapExecuted",
219
+ "inputs": [
220
+ {
221
+ "name": "pointToken",
222
+ "type": "address",
223
+ "indexed": true,
224
+ "internalType": "address"
225
+ },
226
+ {
227
+ "name": "receiver",
228
+ "type": "address",
229
+ "indexed": true,
230
+ "internalType": "address"
231
+ },
232
+ {
233
+ "name": "mintAmount",
234
+ "type": "uint256",
235
+ "indexed": false,
236
+ "internalType": "uint256"
237
+ },
238
+ {
239
+ "name": "usdtOut",
240
+ "type": "uint256",
241
+ "indexed": false,
242
+ "internalType": "uint256"
243
+ },
244
+ {
245
+ "name": "fee",
246
+ "type": "uint256",
247
+ "indexed": false,
248
+ "internalType": "uint256"
249
+ },
250
+ {
251
+ "name": "relayer",
252
+ "type": "address",
253
+ "indexed": true,
254
+ "internalType": "address"
255
+ }
256
+ ],
257
+ "anonymous": false
258
+ },
259
+ {
260
+ "type": "event",
261
+ "name": "OwnershipTransferStarted",
262
+ "inputs": [
263
+ {
264
+ "name": "previousOwner",
265
+ "type": "address",
266
+ "indexed": true,
267
+ "internalType": "address"
268
+ },
269
+ {
270
+ "name": "newOwner",
271
+ "type": "address",
272
+ "indexed": true,
273
+ "internalType": "address"
274
+ }
275
+ ],
276
+ "anonymous": false
277
+ },
278
+ {
279
+ "type": "event",
280
+ "name": "OwnershipTransferred",
281
+ "inputs": [
282
+ {
283
+ "name": "previousOwner",
284
+ "type": "address",
285
+ "indexed": true,
286
+ "internalType": "address"
287
+ },
288
+ {
289
+ "name": "newOwner",
290
+ "type": "address",
291
+ "indexed": true,
292
+ "internalType": "address"
293
+ }
294
+ ],
295
+ "anonymous": false
296
+ },
297
+ {
298
+ "type": "error",
299
+ "name": "DeadlineExpired",
300
+ "inputs": []
301
+ },
302
+ {
303
+ "type": "error",
304
+ "name": "FeeExceedsOutput",
305
+ "inputs": []
306
+ },
307
+ {
308
+ "type": "error",
309
+ "name": "InsufficientOutputAmount",
310
+ "inputs": []
311
+ },
312
+ {
313
+ "type": "error",
314
+ "name": "InvalidPath",
315
+ "inputs": []
316
+ },
317
+ {
318
+ "type": "error",
319
+ "name": "OnlyPoolManager",
320
+ "inputs": []
321
+ },
322
+ {
323
+ "type": "error",
324
+ "name": "OwnableInvalidOwner",
325
+ "inputs": [
326
+ {
327
+ "name": "owner",
328
+ "type": "address",
329
+ "internalType": "address"
330
+ }
331
+ ]
332
+ },
333
+ {
334
+ "type": "error",
335
+ "name": "OwnableUnauthorizedAccount",
336
+ "inputs": [
337
+ {
338
+ "name": "account",
339
+ "type": "address",
340
+ "internalType": "address"
341
+ }
342
+ ]
343
+ },
344
+ {
345
+ "type": "error",
346
+ "name": "ReentrancyGuardReentrantCall",
347
+ "inputs": []
348
+ },
349
+ {
350
+ "type": "error",
351
+ "name": "SafeERC20FailedOperation",
352
+ "inputs": [
353
+ {
354
+ "name": "token",
355
+ "type": "address",
356
+ "internalType": "address"
357
+ }
358
+ ]
359
+ },
360
+ {
361
+ "type": "error",
362
+ "name": "ZeroAddress",
363
+ "inputs": []
364
+ }
365
+ ];
366
+
367
+
368
+
369
+ exports.relayAbi = relayAbi;
370
+ //# sourceMappingURL=chunk-27V32VNM.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/phitran/Pacific-Finance/pafi-backend/pafi-sdk/packages/core/dist/chunk-27V32VNM.cjs","../src/abi/relay.ts"],"names":[],"mappings":"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","file":"/Users/phitran/Pacific-Finance/pafi-backend/pafi-sdk/packages/core/dist/chunk-27V32VNM.cjs","sourcesContent":[null,"/** ABI for Relay contract (mint + swap via PoolManager) — auto-generated from Foundry artifacts, do not edit */\nexport const relayAbi = [\n {\n \"type\": \"constructor\",\n \"inputs\": [\n {\n \"name\": \"initialOwner\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n },\n {\n \"name\": \"_poolManager\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n },\n {\n \"name\": \"_usdt\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n }\n ],\n \"stateMutability\": \"nonpayable\"\n },\n {\n \"type\": \"function\",\n \"name\": \"acceptOwnership\",\n \"inputs\": [],\n \"outputs\": [],\n \"stateMutability\": \"nonpayable\"\n },\n {\n \"type\": \"function\",\n \"name\": \"mintAndSwap\",\n \"inputs\": [\n {\n \"name\": \"mint\",\n \"type\": \"tuple\",\n \"internalType\": \"struct Relay.MintParams\",\n \"components\": [\n {\n \"name\": \"pointToken\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n },\n {\n \"name\": \"receiver\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n },\n {\n \"name\": \"amount\",\n \"type\": \"uint256\",\n \"internalType\": \"uint256\"\n },\n {\n \"name\": \"deadline\",\n \"type\": \"uint256\",\n \"internalType\": \"uint256\"\n },\n {\n \"name\": \"minterSig\",\n \"type\": \"bytes\",\n \"internalType\": \"bytes\"\n },\n {\n \"name\": \"receiverSig\",\n \"type\": \"bytes\",\n \"internalType\": \"bytes\"\n },\n {\n \"name\": \"extData\",\n \"type\": \"bytes\",\n \"internalType\": \"bytes\"\n }\n ]\n },\n {\n \"name\": \"swap\",\n \"type\": \"tuple\",\n \"internalType\": \"struct Relay.SwapParams\",\n \"components\": [\n {\n \"name\": \"path\",\n \"type\": \"tuple[]\",\n \"internalType\": \"struct Relay.PathKey[]\",\n \"components\": [\n {\n \"name\": \"intermediateCurrency\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n },\n {\n \"name\": \"fee\",\n \"type\": \"uint24\",\n \"internalType\": \"uint24\"\n },\n {\n \"name\": \"tickSpacing\",\n \"type\": \"int24\",\n \"internalType\": \"int24\"\n },\n {\n \"name\": \"hooks\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n },\n {\n \"name\": \"hookData\",\n \"type\": \"bytes\",\n \"internalType\": \"bytes\"\n }\n ]\n },\n {\n \"name\": \"deadline\",\n \"type\": \"uint256\",\n \"internalType\": \"uint256\"\n }\n ]\n }\n ],\n \"outputs\": [],\n \"stateMutability\": \"nonpayable\"\n },\n {\n \"type\": \"function\",\n \"name\": \"owner\",\n \"inputs\": [],\n \"outputs\": [\n {\n \"name\": \"\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n }\n ],\n \"stateMutability\": \"view\"\n },\n {\n \"type\": \"function\",\n \"name\": \"pendingOwner\",\n \"inputs\": [],\n \"outputs\": [\n {\n \"name\": \"\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n }\n ],\n \"stateMutability\": \"view\"\n },\n {\n \"type\": \"function\",\n \"name\": \"poolManager\",\n \"inputs\": [],\n \"outputs\": [\n {\n \"name\": \"\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n }\n ],\n \"stateMutability\": \"view\"\n },\n {\n \"type\": \"function\",\n \"name\": \"renounceOwnership\",\n \"inputs\": [],\n \"outputs\": [],\n \"stateMutability\": \"nonpayable\"\n },\n {\n \"type\": \"function\",\n \"name\": \"transferOwnership\",\n \"inputs\": [\n {\n \"name\": \"newOwner\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n }\n ],\n \"outputs\": [],\n \"stateMutability\": \"nonpayable\"\n },\n {\n \"type\": \"function\",\n \"name\": \"unlockCallback\",\n \"inputs\": [\n {\n \"name\": \"data\",\n \"type\": \"bytes\",\n \"internalType\": \"bytes\"\n }\n ],\n \"outputs\": [\n {\n \"name\": \"\",\n \"type\": \"bytes\",\n \"internalType\": \"bytes\"\n }\n ],\n \"stateMutability\": \"nonpayable\"\n },\n {\n \"type\": \"function\",\n \"name\": \"usdt\",\n \"inputs\": [],\n \"outputs\": [\n {\n \"name\": \"\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n }\n ],\n \"stateMutability\": \"view\"\n },\n {\n \"type\": \"event\",\n \"name\": \"MintAndSwapExecuted\",\n \"inputs\": [\n {\n \"name\": \"pointToken\",\n \"type\": \"address\",\n \"indexed\": true,\n \"internalType\": \"address\"\n },\n {\n \"name\": \"receiver\",\n \"type\": \"address\",\n \"indexed\": true,\n \"internalType\": \"address\"\n },\n {\n \"name\": \"mintAmount\",\n \"type\": \"uint256\",\n \"indexed\": false,\n \"internalType\": \"uint256\"\n },\n {\n \"name\": \"usdtOut\",\n \"type\": \"uint256\",\n \"indexed\": false,\n \"internalType\": \"uint256\"\n },\n {\n \"name\": \"fee\",\n \"type\": \"uint256\",\n \"indexed\": false,\n \"internalType\": \"uint256\"\n },\n {\n \"name\": \"relayer\",\n \"type\": \"address\",\n \"indexed\": true,\n \"internalType\": \"address\"\n }\n ],\n \"anonymous\": false\n },\n {\n \"type\": \"event\",\n \"name\": \"OwnershipTransferStarted\",\n \"inputs\": [\n {\n \"name\": \"previousOwner\",\n \"type\": \"address\",\n \"indexed\": true,\n \"internalType\": \"address\"\n },\n {\n \"name\": \"newOwner\",\n \"type\": \"address\",\n \"indexed\": true,\n \"internalType\": \"address\"\n }\n ],\n \"anonymous\": false\n },\n {\n \"type\": \"event\",\n \"name\": \"OwnershipTransferred\",\n \"inputs\": [\n {\n \"name\": \"previousOwner\",\n \"type\": \"address\",\n \"indexed\": true,\n \"internalType\": \"address\"\n },\n {\n \"name\": \"newOwner\",\n \"type\": \"address\",\n \"indexed\": true,\n \"internalType\": \"address\"\n }\n ],\n \"anonymous\": false\n },\n {\n \"type\": \"error\",\n \"name\": \"DeadlineExpired\",\n \"inputs\": []\n },\n {\n \"type\": \"error\",\n \"name\": \"FeeExceedsOutput\",\n \"inputs\": []\n },\n {\n \"type\": \"error\",\n \"name\": \"InsufficientOutputAmount\",\n \"inputs\": []\n },\n {\n \"type\": \"error\",\n \"name\": \"InvalidPath\",\n \"inputs\": []\n },\n {\n \"type\": \"error\",\n \"name\": \"OnlyPoolManager\",\n \"inputs\": []\n },\n {\n \"type\": \"error\",\n \"name\": \"OwnableInvalidOwner\",\n \"inputs\": [\n {\n \"name\": \"owner\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n }\n ]\n },\n {\n \"type\": \"error\",\n \"name\": \"OwnableUnauthorizedAccount\",\n \"inputs\": [\n {\n \"name\": \"account\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n }\n ]\n },\n {\n \"type\": \"error\",\n \"name\": \"ReentrancyGuardReentrantCall\",\n \"inputs\": []\n },\n {\n \"type\": \"error\",\n \"name\": \"SafeERC20FailedOperation\",\n \"inputs\": [\n {\n \"name\": \"token\",\n \"type\": \"address\",\n \"internalType\": \"address\"\n }\n ]\n },\n {\n \"type\": \"error\",\n \"name\": \"ZeroAddress\",\n \"inputs\": []\n }\n] as const;\n"]}