@andrewkimjoseph/celina-sdk 0.2.8 → 0.2.10
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.
- package/build/clients/celo-client.d.ts +6 -0
- package/build/clients/celo-client.js +5 -0
- package/build/clients/celo-client.js.map +1 -1
- package/build/clients/ens-client.d.ts +7 -0
- package/build/clients/ens-client.js +7 -0
- package/build/clients/ens-client.js.map +1 -1
- package/build/clients/uniswap-sdk.js +4 -0
- package/build/clients/uniswap-sdk.js.map +1 -1
- package/build/config/aave.d.ts +6 -0
- package/build/config/aave.js +8 -0
- package/build/config/aave.js.map +1 -1
- package/build/config/celina-tag.d.ts +1 -0
- package/build/config/celina-tag.js +1 -0
- package/build/config/celina-tag.js.map +1 -1
- package/build/config/gooddollar.d.ts +1 -0
- package/build/config/gooddollar.js +1 -0
- package/build/config/gooddollar.js.map +1 -1
- package/build/config/sdk-config.d.ts +8 -0
- package/build/config/sdk-config.js +5 -0
- package/build/config/sdk-config.js.map +1 -1
- package/build/config/uniswap.d.ts +6 -0
- package/build/config/uniswap.js +9 -0
- package/build/config/uniswap.js.map +1 -1
- package/build/index.d.ts +17 -1
- package/build/index.js +2 -0
- package/build/index.js.map +1 -1
- package/build/services/aave.service.d.ts +2 -1
- package/build/services/aave.service.js +2 -1
- package/build/services/aave.service.js.map +1 -1
- package/build/services/account.service.d.ts +9 -0
- package/build/services/account.service.js +6 -0
- package/build/services/account.service.js.map +1 -1
- package/build/services/blockchain.service.d.ts +27 -1
- package/build/services/blockchain.service.js +24 -1
- package/build/services/blockchain.service.js.map +1 -1
- package/build/services/contract.service.d.ts +27 -1
- package/build/services/contract.service.js +20 -1
- package/build/services/contract.service.js.map +1 -1
- package/build/services/ens.service.d.ts +14 -2
- package/build/services/ens.service.js +14 -2
- package/build/services/ens.service.js.map +1 -1
- package/build/services/gooddollar.service.d.ts +9 -1
- package/build/services/gooddollar.service.js +6 -1
- package/build/services/gooddollar.service.js.map +1 -1
- package/build/services/governance.service.d.ts +18 -0
- package/build/services/governance.service.js +14 -0
- package/build/services/governance.service.js.map +1 -1
- package/build/services/mento-fx.service.d.ts +5 -0
- package/build/services/mento-fx.service.js +1 -0
- package/build/services/mento-fx.service.js.map +1 -1
- package/build/services/nft.service.d.ts +16 -0
- package/build/services/nft.service.js +19 -0
- package/build/services/nft.service.js.map +1 -1
- package/build/services/staking.service.d.ts +31 -0
- package/build/services/staking.service.js +34 -0
- package/build/services/staking.service.js.map +1 -1
- package/build/services/token.service.d.ts +10 -0
- package/build/services/token.service.js +9 -0
- package/build/services/token.service.js.map +1 -1
- package/build/services/transaction.service.d.ts +1 -0
- package/build/services/transaction.service.js +1 -0
- package/build/services/transaction.service.js.map +1 -1
- package/build/services/uniswap-path-router.d.ts +18 -0
- package/build/services/uniswap-path-router.js +13 -0
- package/build/services/uniswap-path-router.js.map +1 -1
- package/build/services/uniswap-pool-discovery.d.ts +22 -1
- package/build/services/uniswap-pool-discovery.js +18 -0
- package/build/services/uniswap-pool-discovery.js.map +1 -1
- package/build/types/prepared.d.ts +1 -0
- package/build/types/prepared.js.map +1 -1
- package/build/utils/celo-format.d.ts +3 -0
- package/build/utils/celo-format.js +3 -0
- package/build/utils/celo-format.js.map +1 -1
- package/build/utils/erc20-allowance-storage.d.ts +13 -0
- package/build/utils/erc20-allowance-storage.js +13 -0
- package/build/utils/erc20-allowance-storage.js.map +1 -1
- package/build/utils/format-date.d.ts +1 -0
- package/build/utils/format-date.js +1 -0
- package/build/utils/format-date.js.map +1 -1
- package/build/utils/normalize-address.d.ts +6 -1
- package/build/utils/normalize-address.js +6 -1
- package/build/utils/normalize-address.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ERC-20 allowance storage slot helpers for gas simulation with state overrides.
|
|
3
|
+
* Used when estimating swap/send gas before on-chain approval is confirmed.
|
|
4
|
+
*/
|
|
1
5
|
import { encodeAbiParameters, keccak256, pad, parseAbiParameters, toHex, } from "viem";
|
|
2
6
|
/** Common base slots for ERC-20 allowance mappings (Mento stablecoins use 7). */
|
|
3
7
|
const ALLOWANCE_MAPPING_SLOTS = [
|
|
@@ -24,10 +28,17 @@ const ALLOWANCE_MAPPING_SLOTS = [
|
|
|
24
28
|
20n,
|
|
25
29
|
51n,
|
|
26
30
|
];
|
|
31
|
+
/**
|
|
32
|
+
* Compute the storage slot for `allowance(owner, spender)` given the mapping base slot.
|
|
33
|
+
*/
|
|
27
34
|
export function erc20AllowanceStorageSlot(owner, spender, mappingSlot) {
|
|
28
35
|
const ownerSlot = keccak256(encodeAbiParameters(parseAbiParameters("address, uint256"), [owner, mappingSlot]));
|
|
29
36
|
return keccak256(encodeAbiParameters(parseAbiParameters("address, bytes32"), [spender, ownerSlot]));
|
|
30
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* viem `stateOverride` that sets ERC-20 allowance for gas estimation.
|
|
40
|
+
* @param mappingSlot - Allowance mapping slot in the token contract (try `ALLOWANCE_MAPPING_SLOTS`)
|
|
41
|
+
*/
|
|
31
42
|
export function erc20AllowanceStateOverride(token, owner, spender, amount, mappingSlot) {
|
|
32
43
|
return [
|
|
33
44
|
{
|
|
@@ -41,11 +52,13 @@ export function erc20AllowanceStateOverride(token, owner, spender, amount, mappi
|
|
|
41
52
|
},
|
|
42
53
|
];
|
|
43
54
|
}
|
|
55
|
+
/** True when an estimateGas error likely means allowance/transfer would revert. */
|
|
44
56
|
export function isLikelyTransferFailed(error) {
|
|
45
57
|
const message = error instanceof Error
|
|
46
58
|
? `${error.message} ${error.cause instanceof Error ? error.cause.message : ""}`
|
|
47
59
|
: String(error);
|
|
48
60
|
return /transfer failed/i.test(message);
|
|
49
61
|
}
|
|
62
|
+
/** Mapping base slots to probe when simulating ERC-20 allowance (exported for tests). */
|
|
50
63
|
export { ALLOWANCE_MAPPING_SLOTS };
|
|
51
64
|
//# sourceMappingURL=erc20-allowance-storage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"erc20-allowance-storage.js","sourceRoot":"","sources":["../../src/utils/erc20-allowance-storage.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,SAAS,EACT,GAAG,EACH,kBAAkB,EAClB,KAAK,GAIN,MAAM,MAAM,CAAC;AAEd,iFAAiF;AACjF,MAAM,uBAAuB,GAAG;IAC9B,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;CACK,CAAC;AAEX,MAAM,UAAU,yBAAyB,CACvC,KAAc,EACd,OAAgB,EAChB,WAAmB;IAEnB,MAAM,SAAS,GAAG,SAAS,CACzB,mBAAmB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAClF,CAAC;IACF,OAAO,SAAS,CACd,mBAAmB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAClF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,KAAc,EACd,KAAc,EACd,OAAgB,EAChB,MAAc,EACd,WAAmB;IAEnB,OAAO;QACL;YACE,OAAO,EAAE,KAAK;YACd,SAAS,EAAE;gBACT;oBACE,IAAI,EAAE,yBAAyB,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC;oBAC5D,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;iBAC1B;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,MAAM,OAAO,GACX,KAAK,YAAY,KAAK;QACpB,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAC/E,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACpB,OAAO,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"erc20-allowance-storage.js","sourceRoot":"","sources":["../../src/utils/erc20-allowance-storage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,mBAAmB,EACnB,SAAS,EACT,GAAG,EACH,kBAAkB,EAClB,KAAK,GAIN,MAAM,MAAM,CAAC;AAEd,iFAAiF;AACjF,MAAM,uBAAuB,GAAG;IAC9B,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,EAAE;IACF,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;IACH,GAAG;CACK,CAAC;AAEX;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAc,EACd,OAAgB,EAChB,WAAmB;IAEnB,MAAM,SAAS,GAAG,SAAS,CACzB,mBAAmB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAClF,CAAC;IACF,OAAO,SAAS,CACd,mBAAmB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAClF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAc,EACd,KAAc,EACd,OAAgB,EAChB,MAAc,EACd,WAAmB;IAEnB,OAAO;QACL;YACE,OAAO,EAAE,KAAK;YACd,SAAS,EAAE;gBACT;oBACE,IAAI,EAAE,yBAAyB,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC;oBAC5D,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;iBAC1B;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,MAAM,OAAO,GACX,KAAK,YAAY,KAAK;QACpB,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAC/E,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACpB,OAAO,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED,yFAAyF;AACzF,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format-date.js","sourceRoot":"","sources":["../../src/utils/format-date.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,cAAc,CAAC,WAA4B;IACzD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC;IAClD,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;QACtC,KAAK,EAAE,MAAM;QACb,GAAG,EAAE,SAAS;QACd,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,KAAK;KAChB,CAAC;SACC,MAAM,CAAC,IAAI,CAAC;SACZ,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AACtB,CAAC"}
|
|
1
|
+
{"version":3,"file":"format-date.js","sourceRoot":"","sources":["../../src/utils/format-date.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,MAAM,UAAU,cAAc,CAAC,WAA4B;IACzD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC;IAClD,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;QACtC,KAAK,EAAE,MAAM;QACb,GAAG,EAAE,SAAS;QACd,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,KAAK;KAChB,CAAC;SACC,MAAM,CAAC,IAAI,CAAC;SACZ,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AACtB,CAAC"}
|
|
@@ -1,2 +1,7 @@
|
|
|
1
|
-
/**
|
|
1
|
+
/**
|
|
2
|
+
* Normalize a hex address to EIP-55 checksum form.
|
|
3
|
+
* @param address - Hex address string
|
|
4
|
+
* @param label - Used in error messages when invalid (default `"address"`)
|
|
5
|
+
* @throws When the string is not a valid hex address
|
|
6
|
+
*/
|
|
2
7
|
export declare function normalizeAddress(address: string, label?: string): `0x${string}`;
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { getAddress } from "viem";
|
|
2
|
-
/**
|
|
2
|
+
/**
|
|
3
|
+
* Normalize a hex address to EIP-55 checksum form.
|
|
4
|
+
* @param address - Hex address string
|
|
5
|
+
* @param label - Used in error messages when invalid (default `"address"`)
|
|
6
|
+
* @throws When the string is not a valid hex address
|
|
7
|
+
*/
|
|
3
8
|
export function normalizeAddress(address, label = "address") {
|
|
4
9
|
try {
|
|
5
10
|
return getAddress(address);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalize-address.js","sourceRoot":"","sources":["../../src/utils/normalize-address.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC
|
|
1
|
+
{"version":3,"file":"normalize-address.js","sourceRoot":"","sources":["../../src/utils/normalize-address.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAe,EACf,KAAK,GAAG,SAAS;IAEjB,IAAI,CAAC;QACH,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,WAAW,KAAK,KAAK,OAAO,EAAE,CAAC,CAAC;IAClD,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED