@mento-protocol/mento-sdk 0.1.1 → 0.1.3
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/LICENSE +21 -674
- package/README.md +62 -51
- package/dist/cjs/mento.d.ts +35 -13
- package/dist/cjs/mento.js +52 -48
- package/dist/cjs/utils.d.ts +13 -1
- package/dist/cjs/utils.js +31 -2
- package/dist/esm/mento.d.ts +35 -13
- package/dist/esm/mento.js +53 -49
- package/dist/esm/utils.d.ts +13 -1
- package/dist/esm/utils.js +29 -2
- package/package.json +17 -8
package/dist/esm/utils.d.ts
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
|
-
import { BigNumber,
|
|
1
|
+
import { BigNumber, providers, Signer } from 'ethers';
|
|
2
2
|
import { Address } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Ensures that given signer is truly a a connected signer
|
|
5
|
+
* @param signer an ethers signer
|
|
6
|
+
* @throws if signer is invalid or not connected
|
|
7
|
+
*/
|
|
8
|
+
export declare function validateSigner(signer: Signer): void;
|
|
9
|
+
/**
|
|
10
|
+
* Ensures that given signerOrProvider is truly a provider or a connected signer
|
|
11
|
+
* @param signerOrProvider an ethers provider or signer
|
|
12
|
+
* @throws if signerOrProvider is invalid or not connected
|
|
13
|
+
*/
|
|
14
|
+
export declare function validateSignerOrProvider(signerOrProvider: Signer | providers.Provider): void;
|
|
3
15
|
/**
|
|
4
16
|
* Returns the broker address from the Celo registry
|
|
5
17
|
* @param signerOrProvider an ethers provider or signer
|
package/dist/esm/utils.js
CHANGED
|
@@ -7,8 +7,35 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
7
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
import { constants, Contract, providers, Signer } from 'ethers';
|
|
11
|
+
/**
|
|
12
|
+
* Ensures that given signer is truly a a connected signer
|
|
13
|
+
* @param signer an ethers signer
|
|
14
|
+
* @throws if signer is invalid or not connected
|
|
15
|
+
*/
|
|
16
|
+
export function validateSigner(signer) {
|
|
17
|
+
if (!Signer.isSigner(signer)) {
|
|
18
|
+
throw new Error('A valid signer must be provided');
|
|
19
|
+
}
|
|
20
|
+
if (!providers.Provider.isProvider(signer.provider)) {
|
|
21
|
+
throw new Error('Signer must be connected to a provider');
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Ensures that given signerOrProvider is truly a provider or a connected signer
|
|
26
|
+
* @param signerOrProvider an ethers provider or signer
|
|
27
|
+
* @throws if signerOrProvider is invalid or not connected
|
|
28
|
+
*/
|
|
29
|
+
export function validateSignerOrProvider(signerOrProvider) {
|
|
30
|
+
const isSigner = Signer.isSigner(signerOrProvider);
|
|
31
|
+
const isProvider = providers.Provider.isProvider(signerOrProvider);
|
|
32
|
+
if (!isSigner && !isProvider) {
|
|
33
|
+
throw new Error('A valid signer or provider must be provided');
|
|
34
|
+
}
|
|
35
|
+
if (isSigner && !providers.Provider.isProvider(signerOrProvider.provider)) {
|
|
36
|
+
throw new Error('Signer must be connected to a provider');
|
|
37
|
+
}
|
|
38
|
+
}
|
|
12
39
|
/**
|
|
13
40
|
* Returns the broker address from the Celo registry
|
|
14
41
|
* @param signerOrProvider an ethers provider or signer
|
package/package.json
CHANGED
|
@@ -1,26 +1,32 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mento-protocol/mento-sdk",
|
|
3
3
|
"description": "Official SDK for interacting with the Mento Protocol",
|
|
4
|
-
"version": "0.1.
|
|
5
|
-
"license": "
|
|
4
|
+
"version": "0.1.3",
|
|
5
|
+
"license": "MIT",
|
|
6
6
|
"author": "Mento Labs",
|
|
7
7
|
"keywords": [
|
|
8
8
|
"mento",
|
|
9
9
|
"celo",
|
|
10
10
|
"solidity"
|
|
11
11
|
],
|
|
12
|
+
"repository": {
|
|
13
|
+
"type": "git",
|
|
14
|
+
"url": "https://github.com/mento-protocol/mento-sdk.git"
|
|
15
|
+
},
|
|
12
16
|
"main": "dist/cjs/index.js",
|
|
13
17
|
"module": "dist/esm/index.js",
|
|
14
18
|
"typings": "dist/esm/index.d.ts",
|
|
15
19
|
"files": [
|
|
16
|
-
"dist"
|
|
20
|
+
"dist",
|
|
21
|
+
"!dist/**/*.test.*"
|
|
17
22
|
],
|
|
18
23
|
"scripts": {
|
|
19
24
|
"analyze": "size-limit --why",
|
|
20
25
|
"build": "yarn build:cjs && yarn build:esm",
|
|
21
26
|
"build:cjs": "tsc --project ./tsconfig.json",
|
|
22
27
|
"build:esm": "tsc --project ./tsconfig.esm.json",
|
|
23
|
-
"
|
|
28
|
+
"clean": "rm -rf ./dist",
|
|
29
|
+
"lint": "eslint --config ./.eslintrc.json src/**/*.ts",
|
|
24
30
|
"prettier": "prettier --config ./.prettierrc.json --write **/*.{json,md,js,ts,yml}",
|
|
25
31
|
"size": "size-limit",
|
|
26
32
|
"test": "jest --runInBand --verbose",
|
|
@@ -57,15 +63,17 @@
|
|
|
57
63
|
"@tsconfig/recommended": "^1.0.1",
|
|
58
64
|
"@types/jest": "^29.4.0",
|
|
59
65
|
"@types/node": "^18.13.0",
|
|
60
|
-
"@typescript-eslint/eslint-plugin": "^5.
|
|
61
|
-
"@typescript-eslint/parser": "^5.
|
|
62
|
-
"eslint": "^8.
|
|
66
|
+
"@typescript-eslint/eslint-plugin": "^5.53.0",
|
|
67
|
+
"@typescript-eslint/parser": "^5.53.0",
|
|
68
|
+
"eslint": "^8.34.0",
|
|
69
|
+
"eslint-config-prettier": "^8.6.0",
|
|
63
70
|
"ethers": "^5.7.2",
|
|
64
71
|
"husky": "^8.0.2",
|
|
65
72
|
"jest": "^29.4.2",
|
|
66
73
|
"prettier": "^2.8.4",
|
|
67
74
|
"size-limit": "^8.1.0",
|
|
68
75
|
"ts-jest": "^29.0.5",
|
|
76
|
+
"ts-node": "^10.9.1",
|
|
69
77
|
"typescript": "^4.9.5"
|
|
70
78
|
},
|
|
71
79
|
"dependencies": {
|
|
@@ -73,5 +81,6 @@
|
|
|
73
81
|
},
|
|
74
82
|
"peerDependencies": {
|
|
75
83
|
"ethers": "^5.7.2"
|
|
76
|
-
}
|
|
84
|
+
},
|
|
85
|
+
"packageManager": "yarn@3.3.1"
|
|
77
86
|
}
|