@gainsnetwork/sdk 0.0.8 → 0.0.9-rc1

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 (67) hide show
  1. package/README.md +11 -11
  2. package/lib/contracts/addresses.d.ts +2 -2
  3. package/lib/contracts/addresses.js +15 -15
  4. package/lib/contracts/addresses.json +17 -17
  5. package/lib/contracts/index.d.ts +6 -6
  6. package/lib/contracts/index.js +30 -30
  7. package/lib/contracts/types/GFarmTradingStorageV5.d.ts +1911 -0
  8. package/lib/contracts/types/GFarmTradingStorageV5.js +2 -0
  9. package/lib/contracts/types/GNSPairInfosV6_1.d.ts +911 -0
  10. package/lib/contracts/types/GNSPairInfosV6_1.js +2 -0
  11. package/lib/contracts/types/GNSPairsStorageV6.d.ts +660 -0
  12. package/lib/contracts/types/GNSPairsStorageV6.js +2 -0
  13. package/lib/contracts/types/common.d.ts +22 -0
  14. package/lib/contracts/types/common.js +2 -0
  15. package/lib/contracts/types/factories/GFarmTradingStorageV5__factory.d.ts +83 -0
  16. package/lib/contracts/types/factories/GFarmTradingStorageV5__factory.js +2691 -0
  17. package/lib/contracts/types/factories/GNSPairInfosV6_1__factory.d.ts +98 -0
  18. package/lib/contracts/types/factories/GNSPairInfosV6_1__factory.js +1485 -0
  19. package/lib/contracts/types/factories/GNSPairsStorageV6__factory.d.ts +117 -0
  20. package/lib/contracts/types/factories/GNSPairsStorageV6__factory.js +1265 -0
  21. package/lib/contracts/types/factories/index.d.ts +3 -0
  22. package/lib/contracts/types/factories/index.js +12 -0
  23. package/lib/contracts/types/generated/GFarmTradingStorageV5.d.ts +1911 -1911
  24. package/lib/contracts/types/generated/GFarmTradingStorageV5.js +2 -2
  25. package/lib/contracts/types/generated/GNSPairInfosV6_1.d.ts +911 -911
  26. package/lib/contracts/types/generated/GNSPairInfosV6_1.js +2 -2
  27. package/lib/contracts/types/generated/GNSPairsStorageV6.d.ts +660 -660
  28. package/lib/contracts/types/generated/GNSPairsStorageV6.js +2 -2
  29. package/lib/contracts/types/generated/common.d.ts +22 -22
  30. package/lib/contracts/types/generated/common.js +2 -2
  31. package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.d.ts +83 -83
  32. package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.js +2691 -2691
  33. package/lib/contracts/types/generated/factories/GNSPairInfosV6_1__factory.d.ts +98 -98
  34. package/lib/contracts/types/generated/factories/GNSPairInfosV6_1__factory.js +1485 -1485
  35. package/lib/contracts/types/generated/factories/GNSPairsStorageV6__factory.d.ts +117 -117
  36. package/lib/contracts/types/generated/factories/GNSPairsStorageV6__factory.js +1265 -1265
  37. package/lib/contracts/types/generated/factories/index.d.ts +3 -3
  38. package/lib/contracts/types/generated/factories/index.js +12 -12
  39. package/lib/contracts/types/generated/index.d.ts +7 -7
  40. package/lib/contracts/types/generated/index.js +33 -33
  41. package/lib/contracts/types/index.d.ts +11 -11
  42. package/lib/contracts/types/index.js +2 -2
  43. package/lib/contracts/utils/index.d.ts +2 -2
  44. package/lib/contracts/utils/index.js +18 -18
  45. package/lib/contracts/utils/openTrades.d.ts +3 -3
  46. package/lib/contracts/utils/openTrades.js +116 -116
  47. package/lib/contracts/utils/pairs.d.ts +6 -6
  48. package/lib/contracts/utils/pairs.js +102 -102
  49. package/lib/index.d.ts +3 -3
  50. package/lib/index.js +19 -19
  51. package/lib/markets/crypto.d.ts +1 -1
  52. package/lib/markets/crypto.js +6 -6
  53. package/lib/markets/forex.d.ts +1 -2
  54. package/lib/markets/forex.js +29 -38
  55. package/lib/markets/index.d.ts +3 -3
  56. package/lib/markets/index.js +19 -19
  57. package/lib/markets/stocks.d.ts +1 -3
  58. package/lib/markets/stocks.js +50 -54
  59. package/lib/trade/fees.d.ts +15 -15
  60. package/lib/trade/fees.js +45 -45
  61. package/lib/trade/index.d.ts +2 -2
  62. package/lib/trade/index.js +18 -18
  63. package/lib/trade/pnl.d.ts +7 -7
  64. package/lib/trade/pnl.js +43 -43
  65. package/lib/trade/types.d.ts +143 -143
  66. package/lib/trade/types.js +8 -8
  67. package/package.json +103 -103
@@ -1,18 +1,18 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./fees"), exports);
18
- __exportStar(require("./pnl"), exports);
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./fees"), exports);
18
+ __exportStar(require("./pnl"), exports);
@@ -1,7 +1,7 @@
1
- import { GetFundingFeeContext, GetRolloverFeeContext } from "./fees";
2
- import { Fee, Trade, TradeInfo, TradeInitialAccFees } from "./types";
3
- export type GetPnlContext = {
4
- fee: Fee | undefined;
5
- maxGainP: number | undefined;
6
- } & GetRolloverFeeContext & GetFundingFeeContext;
7
- export declare const getPnl: (price: number | undefined, trade: Trade, tradeInfo: TradeInfo, initialAccFees: TradeInitialAccFees, useFees: boolean, context: GetPnlContext) => number[] | undefined;
1
+ import { GetFundingFeeContext, GetRolloverFeeContext } from "./fees";
2
+ import { Fee, Trade, TradeInfo, TradeInitialAccFees } from "./types";
3
+ export type GetPnlContext = {
4
+ fee: Fee | undefined;
5
+ maxGainP: number | undefined;
6
+ } & GetRolloverFeeContext & GetFundingFeeContext;
7
+ export declare const getPnl: (price: number | undefined, trade: Trade, tradeInfo: TradeInfo, initialAccFees: TradeInitialAccFees, useFees: boolean, context: GetPnlContext) => number[] | undefined;
package/lib/trade/pnl.js CHANGED
@@ -1,43 +1,43 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getPnl = void 0;
4
- const fees_1 = require("./fees");
5
- const getPnl = (price, trade, tradeInfo, initialAccFees, useFees, context) => {
6
- if (!price) {
7
- return;
8
- }
9
- const posDai = trade.initialPosToken * tradeInfo.tokenPriceDai;
10
- const { openPrice, leverage } = trade;
11
- const { maxGainP, currentBlock, pairParams, pairRolloverFees, pairFundingFees, openInterest, fee, } = context;
12
- const maxGain = maxGainP === undefined ? Infinity : (maxGainP / 100) * posDai;
13
- let pnlDai = trade.buy
14
- ? ((price - openPrice) / openPrice) * leverage * posDai
15
- : ((openPrice - price) / openPrice) * leverage * posDai;
16
- pnlDai = pnlDai > maxGain ? maxGain : pnlDai;
17
- if (useFees) {
18
- pnlDai -= (0, fees_1.getRolloverFee)(posDai, initialAccFees.rollover, initialAccFees.openedAfterUpdate, {
19
- currentBlock,
20
- pairParams,
21
- pairRolloverFees,
22
- });
23
- pnlDai -= (0, fees_1.getFundingFee)(posDai * trade.leverage, initialAccFees.funding, trade.buy, initialAccFees.openedAfterUpdate, {
24
- currentBlock,
25
- pairParams,
26
- pairFundingFees,
27
- openInterest,
28
- });
29
- }
30
- let pnlPercentage = (pnlDai / posDai) * 100;
31
- // Can be liquidated
32
- if (pnlPercentage <= -90) {
33
- pnlPercentage = -100;
34
- }
35
- else {
36
- pnlDai -= (0, fees_1.getClosingFee)(posDai, trade.leverage, trade.pairIndex, fee);
37
- pnlPercentage = (pnlDai / posDai) * 100;
38
- }
39
- pnlPercentage = pnlPercentage < -100 ? -100 : pnlPercentage;
40
- pnlDai = (posDai * pnlPercentage) / 100;
41
- return [pnlDai, pnlPercentage];
42
- };
43
- exports.getPnl = getPnl;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPnl = void 0;
4
+ const fees_1 = require("./fees");
5
+ const getPnl = (price, trade, tradeInfo, initialAccFees, useFees, context) => {
6
+ if (!price) {
7
+ return;
8
+ }
9
+ const posDai = trade.initialPosToken * tradeInfo.tokenPriceDai;
10
+ const { openPrice, leverage } = trade;
11
+ const { maxGainP, currentBlock, pairParams, pairRolloverFees, pairFundingFees, openInterest, fee, } = context;
12
+ const maxGain = maxGainP === undefined ? Infinity : (maxGainP / 100) * posDai;
13
+ let pnlDai = trade.buy
14
+ ? ((price - openPrice) / openPrice) * leverage * posDai
15
+ : ((openPrice - price) / openPrice) * leverage * posDai;
16
+ pnlDai = pnlDai > maxGain ? maxGain : pnlDai;
17
+ if (useFees) {
18
+ pnlDai -= (0, fees_1.getRolloverFee)(posDai, initialAccFees.rollover, initialAccFees.openedAfterUpdate, {
19
+ currentBlock,
20
+ pairParams,
21
+ pairRolloverFees,
22
+ });
23
+ pnlDai -= (0, fees_1.getFundingFee)(posDai * trade.leverage, initialAccFees.funding, trade.buy, initialAccFees.openedAfterUpdate, {
24
+ currentBlock,
25
+ pairParams,
26
+ pairFundingFees,
27
+ openInterest,
28
+ });
29
+ }
30
+ let pnlPercentage = (pnlDai / posDai) * 100;
31
+ // Can be liquidated
32
+ if (pnlPercentage <= -90) {
33
+ pnlPercentage = -100;
34
+ }
35
+ else {
36
+ pnlDai -= (0, fees_1.getClosingFee)(posDai, trade.leverage, trade.pairIndex, fee);
37
+ pnlPercentage = (pnlDai / posDai) * 100;
38
+ }
39
+ pnlPercentage = pnlPercentage < -100 ? -100 : pnlPercentage;
40
+ pnlDai = (posDai * pnlPercentage) / 100;
41
+ return [pnlDai, pnlPercentage];
42
+ };
43
+ exports.getPnl = getPnl;
@@ -1,143 +1,143 @@
1
- export type PairIndexes = {
2
- [key: string]: number;
3
- };
4
- export type TradeContainer = {
5
- trade: Trade;
6
- tradeInfo: TradeInfo;
7
- initialAccFees: TradeInitialAccFees;
8
- };
9
- export type Trade = {
10
- buy: boolean;
11
- index: number;
12
- initialPosToken: number;
13
- leverage: number;
14
- openPrice: number;
15
- pairIndex: number;
16
- sl: number;
17
- tp: number;
18
- trader: string;
19
- };
20
- export type TradeInfo = {
21
- openInterestDai: number;
22
- slLastUpdated: number;
23
- tokenPriceDai: number;
24
- tpLastUpdated: number;
25
- };
26
- export type TradeInitialAccFees = {
27
- rollover: number;
28
- funding: number;
29
- openedAfterUpdate: boolean;
30
- };
31
- export type TradingGroup = {
32
- maxCollateralP: number;
33
- maxLeverage: number;
34
- minLeverage: number;
35
- name: string;
36
- };
37
- export type LimitOrder = {
38
- block: number;
39
- buy: boolean;
40
- index: number;
41
- leverage: number;
42
- maxPrice: number;
43
- minPrice: number;
44
- pairIndex: number;
45
- positionSize: number;
46
- sl: number;
47
- spreadReductionP: number;
48
- tp: number;
49
- trader: string;
50
- type: number;
51
- };
52
- export type Fee = {
53
- closeFeeP: number;
54
- minLevPosDai: number;
55
- nftLimitOrderFeeP: number;
56
- openFeeP: number;
57
- referralFeeP: number;
58
- };
59
- export type OpenInterest = {
60
- long: number;
61
- max: number;
62
- short: number;
63
- };
64
- export type OpenCollateral = {
65
- long: number;
66
- short: number;
67
- };
68
- export type PairParams = {
69
- onePercentDepthAbove: number;
70
- onePercentDepthBelow: number;
71
- rolloverFeePerBlockP: number;
72
- fundingFeePerBlockP: number;
73
- };
74
- export type PairRolloverFees = {
75
- accPerCollateral: number;
76
- lastUpdateBlock: number;
77
- };
78
- export type PairFundingFees = {
79
- accPerOiLong: number;
80
- accPerOiShort: number;
81
- lastUpdateBlock: number;
82
- };
83
- export type Pair = {
84
- name: string;
85
- from: string;
86
- to: string;
87
- feeIndex: number;
88
- groupIndex: number;
89
- pairIndex: number;
90
- spreadP: number;
91
- };
92
- export type TradeHistoryRecord = {
93
- action: string;
94
- address: string;
95
- buy: number;
96
- date: string;
97
- leverage: number;
98
- pair: string;
99
- pnl_net: number;
100
- price: number;
101
- size: number;
102
- tx: string;
103
- };
104
- export type MarketOrder = {
105
- trader: string;
106
- pairIndex: number;
107
- index: number;
108
- block: number;
109
- open: boolean;
110
- };
111
- export type ChartBar = {
112
- close: number;
113
- high: number;
114
- isBarClosed: boolean;
115
- isLastBar: boolean;
116
- low: number;
117
- open: number;
118
- time: number;
119
- };
120
- export type LeaderboardTrader = {
121
- address: string;
122
- tradesCount: number;
123
- winrate: number;
124
- pnl: number;
125
- volume: number;
126
- score: number;
127
- };
128
- export type OpenTradeParams = [
129
- address: string,
130
- pairIndex: number,
131
- x1: number,
132
- x2: number,
133
- wei: number,
134
- price: string,
135
- buy: boolean,
136
- leverage: number,
137
- takeProfit: string,
138
- stopLoss: string
139
- ];
140
- export declare enum PositionType {
141
- LONG = "LONG",
142
- SHORT = "SHORT"
143
- }
1
+ export type PairIndexes = {
2
+ [key: string]: number;
3
+ };
4
+ export type TradeContainer = {
5
+ trade: Trade;
6
+ tradeInfo: TradeInfo;
7
+ initialAccFees: TradeInitialAccFees;
8
+ };
9
+ export type Trade = {
10
+ buy: boolean;
11
+ index: number;
12
+ initialPosToken: number;
13
+ leverage: number;
14
+ openPrice: number;
15
+ pairIndex: number;
16
+ sl: number;
17
+ tp: number;
18
+ trader: string;
19
+ };
20
+ export type TradeInfo = {
21
+ openInterestDai: number;
22
+ slLastUpdated: number;
23
+ tokenPriceDai: number;
24
+ tpLastUpdated: number;
25
+ };
26
+ export type TradeInitialAccFees = {
27
+ rollover: number;
28
+ funding: number;
29
+ openedAfterUpdate: boolean;
30
+ };
31
+ export type TradingGroup = {
32
+ maxCollateralP: number;
33
+ maxLeverage: number;
34
+ minLeverage: number;
35
+ name: string;
36
+ };
37
+ export type LimitOrder = {
38
+ block: number;
39
+ buy: boolean;
40
+ index: number;
41
+ leverage: number;
42
+ maxPrice: number;
43
+ minPrice: number;
44
+ pairIndex: number;
45
+ positionSize: number;
46
+ sl: number;
47
+ spreadReductionP: number;
48
+ tp: number;
49
+ trader: string;
50
+ type: number;
51
+ };
52
+ export type Fee = {
53
+ closeFeeP: number;
54
+ minLevPosDai: number;
55
+ nftLimitOrderFeeP: number;
56
+ openFeeP: number;
57
+ referralFeeP: number;
58
+ };
59
+ export type OpenInterest = {
60
+ long: number;
61
+ max: number;
62
+ short: number;
63
+ };
64
+ export type OpenCollateral = {
65
+ long: number;
66
+ short: number;
67
+ };
68
+ export type PairParams = {
69
+ onePercentDepthAbove: number;
70
+ onePercentDepthBelow: number;
71
+ rolloverFeePerBlockP: number;
72
+ fundingFeePerBlockP: number;
73
+ };
74
+ export type PairRolloverFees = {
75
+ accPerCollateral: number;
76
+ lastUpdateBlock: number;
77
+ };
78
+ export type PairFundingFees = {
79
+ accPerOiLong: number;
80
+ accPerOiShort: number;
81
+ lastUpdateBlock: number;
82
+ };
83
+ export type Pair = {
84
+ name: string;
85
+ from: string;
86
+ to: string;
87
+ feeIndex: number;
88
+ groupIndex: number;
89
+ pairIndex: number;
90
+ spreadP: number;
91
+ };
92
+ export type TradeHistoryRecord = {
93
+ action: string;
94
+ address: string;
95
+ buy: number;
96
+ date: string;
97
+ leverage: number;
98
+ pair: string;
99
+ pnl_net: number;
100
+ price: number;
101
+ size: number;
102
+ tx: string;
103
+ };
104
+ export type MarketOrder = {
105
+ trader: string;
106
+ pairIndex: number;
107
+ index: number;
108
+ block: number;
109
+ open: boolean;
110
+ };
111
+ export type ChartBar = {
112
+ close: number;
113
+ high: number;
114
+ isBarClosed: boolean;
115
+ isLastBar: boolean;
116
+ low: number;
117
+ open: number;
118
+ time: number;
119
+ };
120
+ export type LeaderboardTrader = {
121
+ address: string;
122
+ tradesCount: number;
123
+ winrate: number;
124
+ pnl: number;
125
+ volume: number;
126
+ score: number;
127
+ };
128
+ export type OpenTradeParams = [
129
+ address: string,
130
+ pairIndex: number,
131
+ x1: number,
132
+ x2: number,
133
+ wei: number,
134
+ price: string,
135
+ buy: boolean,
136
+ leverage: number,
137
+ takeProfit: string,
138
+ stopLoss: string
139
+ ];
140
+ export declare enum PositionType {
141
+ LONG = "LONG",
142
+ SHORT = "SHORT"
143
+ }
@@ -1,8 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PositionType = void 0;
4
- var PositionType;
5
- (function (PositionType) {
6
- PositionType["LONG"] = "LONG";
7
- PositionType["SHORT"] = "SHORT";
8
- })(PositionType = exports.PositionType || (exports.PositionType = {}));
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PositionType = void 0;
4
+ var PositionType;
5
+ (function (PositionType) {
6
+ PositionType["LONG"] = "LONG";
7
+ PositionType["SHORT"] = "SHORT";
8
+ })(PositionType = exports.PositionType || (exports.PositionType = {}));
package/package.json CHANGED
@@ -1,103 +1,103 @@
1
- {
2
- "name": "@gainsnetwork/sdk",
3
- "version": "0.0.8",
4
- "description": "Gains Network SDK",
5
- "main": "./lib/index.js",
6
- "files": [
7
- "lib/**/*"
8
- ],
9
- "scripts": {
10
- "build": "tsc --project tsconfig.build.json",
11
- "clean": "rm -rf ./lib/",
12
- "cm": "cz",
13
- "lint": "eslint ./src/ --fix",
14
- "prepare": "husky install",
15
- "semantic-release": "semantic-release",
16
- "test:watch": "jest --watch",
17
- "test": "jest --coverage",
18
- "typecheck": "tsc --noEmit",
19
- "generate-types": "typechain --target=ethers-v5 --out-dir ./src/contracts/types/generated ./abi/*.json"
20
- },
21
- "repository": {
22
- "type": "git",
23
- "url": "git+git@github.com:GainsNetwork-org/sdk.git"
24
- },
25
- "engines": {
26
- "node": ">=12.0"
27
- },
28
- "devDependencies": {
29
- "@typechain/ethers-v5": "^10.1.1",
30
- "@types/jest": "^27.5.2",
31
- "@types/luxon": "^3.2.0",
32
- "@types/node": "^12.20.11",
33
- "@typescript-eslint/eslint-plugin": "^4.22.0",
34
- "@typescript-eslint/parser": "^4.22.0",
35
- "conventional-changelog-conventionalcommits": "^5.0.0",
36
- "eslint": "^7.25.0",
37
- "eslint-config-prettier": "^8.3.0",
38
- "eslint-plugin-node": "^11.1.0",
39
- "eslint-plugin-prettier": "^3.4.0",
40
- "husky": "^6.0.0",
41
- "jest": "^27.2.0",
42
- "lint-staged": "^10.5.4",
43
- "prettier": "^2.2.1",
44
- "semantic-release": "^19.0.2",
45
- "ts-jest": "^27.0.5",
46
- "ts-node": "^10.2.1",
47
- "typechain": "^8.1.1",
48
- "typescript": "^4.2.4"
49
- },
50
- "lint-staged": {
51
- "*.ts": "eslint --cache --cache-location .eslintcache --fix"
52
- },
53
- "release": {
54
- "branches": [
55
- "main"
56
- ],
57
- "plugins": [
58
- [
59
- "@semantic-release/commit-analyzer",
60
- {
61
- "preset": "conventionalcommits",
62
- "releaseRules": [
63
- {
64
- "type": "build",
65
- "scope": "deps",
66
- "release": "patch"
67
- }
68
- ]
69
- }
70
- ],
71
- [
72
- "@semantic-release/release-notes-generator",
73
- {
74
- "preset": "conventionalcommits",
75
- "presetConfig": {
76
- "types": [
77
- {
78
- "type": "feat",
79
- "section": "Features"
80
- },
81
- {
82
- "type": "fix",
83
- "section": "Bug Fixes"
84
- },
85
- {
86
- "type": "build",
87
- "section": "Dependencies and Other Build Updates",
88
- "hidden": false
89
- }
90
- ]
91
- }
92
- }
93
- ],
94
- "@semantic-release/npm",
95
- "@semantic-release/github"
96
- ]
97
- },
98
- "dependencies": {
99
- "@ethersproject/providers": "^5.7.2",
100
- "ethers": "^5.7.2",
101
- "luxon": "^3.2.0"
102
- }
103
- }
1
+ {
2
+ "name": "@gainsnetwork/sdk",
3
+ "version": "0.0.9-rc1",
4
+ "description": "Gains Network SDK",
5
+ "main": "./lib/index.js",
6
+ "files": [
7
+ "lib/**/*"
8
+ ],
9
+ "scripts": {
10
+ "build": "tsc --project tsconfig.build.json",
11
+ "clean": "rm -rf ./lib/",
12
+ "cm": "cz",
13
+ "lint": "eslint ./src/ --fix",
14
+ "prepare": "husky install",
15
+ "semantic-release": "semantic-release",
16
+ "test:watch": "jest --watch",
17
+ "test": "jest --coverage",
18
+ "typecheck": "tsc --noEmit",
19
+ "generate-types": "typechain --target=ethers-v5 --out-dir ./src/contracts/types/generated ./abi/*.json"
20
+ },
21
+ "repository": {
22
+ "type": "git",
23
+ "url": "git+git@github.com:GainsNetwork-org/sdk.git"
24
+ },
25
+ "engines": {
26
+ "node": ">=12.0"
27
+ },
28
+ "devDependencies": {
29
+ "@typechain/ethers-v5": "^10.1.1",
30
+ "@types/jest": "^27.5.2",
31
+ "@types/luxon": "^3.2.0",
32
+ "@types/node": "^12.20.11",
33
+ "@typescript-eslint/eslint-plugin": "^4.22.0",
34
+ "@typescript-eslint/parser": "^4.22.0",
35
+ "conventional-changelog-conventionalcommits": "^5.0.0",
36
+ "eslint": "^7.25.0",
37
+ "eslint-config-prettier": "^8.3.0",
38
+ "eslint-plugin-node": "^11.1.0",
39
+ "eslint-plugin-prettier": "^3.4.0",
40
+ "husky": "^6.0.0",
41
+ "jest": "^27.2.0",
42
+ "lint-staged": "^10.5.4",
43
+ "prettier": "^2.2.1",
44
+ "semantic-release": "^19.0.2",
45
+ "ts-jest": "^27.0.5",
46
+ "ts-node": "^10.2.1",
47
+ "typechain": "^8.1.1",
48
+ "typescript": "^4.2.4"
49
+ },
50
+ "lint-staged": {
51
+ "*.ts": "eslint --cache --cache-location .eslintcache --fix"
52
+ },
53
+ "release": {
54
+ "branches": [
55
+ "main"
56
+ ],
57
+ "plugins": [
58
+ [
59
+ "@semantic-release/commit-analyzer",
60
+ {
61
+ "preset": "conventionalcommits",
62
+ "releaseRules": [
63
+ {
64
+ "type": "build",
65
+ "scope": "deps",
66
+ "release": "patch"
67
+ }
68
+ ]
69
+ }
70
+ ],
71
+ [
72
+ "@semantic-release/release-notes-generator",
73
+ {
74
+ "preset": "conventionalcommits",
75
+ "presetConfig": {
76
+ "types": [
77
+ {
78
+ "type": "feat",
79
+ "section": "Features"
80
+ },
81
+ {
82
+ "type": "fix",
83
+ "section": "Bug Fixes"
84
+ },
85
+ {
86
+ "type": "build",
87
+ "section": "Dependencies and Other Build Updates",
88
+ "hidden": false
89
+ }
90
+ ]
91
+ }
92
+ }
93
+ ],
94
+ "@semantic-release/npm",
95
+ "@semantic-release/github"
96
+ ]
97
+ },
98
+ "dependencies": {
99
+ "@ethersproject/providers": "^5.7.2",
100
+ "ethers": "^5.7.2",
101
+ "luxon": "^3.2.0"
102
+ }
103
+ }