@pythnetwork/price-pusher 9.0.1 → 9.2.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.
- package/README.md +119 -1
- package/lib/aptos/balance-tracker.d.ts +46 -0
- package/lib/aptos/balance-tracker.d.ts.map +1 -0
- package/lib/aptos/balance-tracker.js +61 -0
- package/lib/aptos/command.d.ts +2 -0
- package/lib/aptos/command.d.ts.map +1 -1
- package/lib/aptos/command.js +46 -9
- package/lib/controller.d.ts +3 -0
- package/lib/controller.d.ts.map +1 -1
- package/lib/controller.js +37 -1
- package/lib/evm/balance-tracker.d.ts +42 -0
- package/lib/evm/balance-tracker.d.ts.map +1 -0
- package/lib/evm/balance-tracker.js +49 -0
- package/lib/evm/command.d.ts +3 -0
- package/lib/evm/command.d.ts.map +1 -1
- package/lib/evm/command.js +53 -11
- package/lib/evm/evm.d.ts +2 -1
- package/lib/evm/evm.d.ts.map +1 -1
- package/lib/evm/evm.js +6 -3
- package/lib/evm/pyth-contract.d.ts.map +1 -1
- package/lib/evm/super-wallet.d.ts.map +1 -1
- package/lib/evm/super-wallet.js +17 -7
- package/lib/fuel/command.js +17 -7
- package/lib/index.js +3 -0
- package/lib/injective/command.d.ts +1 -0
- package/lib/injective/command.d.ts.map +1 -1
- package/lib/injective/command.js +26 -10
- package/lib/injective/injective.d.ts +2 -0
- package/lib/injective/injective.d.ts.map +1 -1
- package/lib/injective/injective.js +22 -7
- package/lib/interface.d.ts +51 -0
- package/lib/interface.d.ts.map +1 -1
- package/lib/interface.js +80 -1
- package/lib/metrics.d.ts +22 -0
- package/lib/metrics.d.ts.map +1 -0
- package/lib/metrics.js +113 -0
- package/lib/near/command.js +17 -7
- package/lib/options.d.ts +6 -0
- package/lib/options.d.ts.map +1 -1
- package/lib/options.js +17 -1
- package/lib/price-config.d.ts.map +1 -1
- package/lib/price-config.js +5 -1
- package/lib/solana/balance-tracker.d.ts +42 -0
- package/lib/solana/balance-tracker.d.ts.map +1 -0
- package/lib/solana/balance-tracker.js +51 -0
- package/lib/solana/command.d.ts +2 -0
- package/lib/solana/command.d.ts.map +1 -1
- package/lib/solana/command.js +48 -10
- package/lib/solana/solana.d.ts.map +1 -1
- package/lib/solana/solana.js +1 -1
- package/lib/sui/balance-tracker.d.ts +39 -0
- package/lib/sui/balance-tracker.d.ts.map +1 -0
- package/lib/sui/balance-tracker.js +54 -0
- package/lib/sui/command.d.ts +2 -0
- package/lib/sui/command.d.ts.map +1 -1
- package/lib/sui/command.js +50 -12
- package/lib/sui/sui.d.ts.map +1 -1
- package/lib/ton/command.js +17 -7
- package/lib/utils.d.ts +2 -2
- package/lib/utils.d.ts.map +1 -1
- package/package.json +17 -10
package/lib/sui/command.js
CHANGED
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
37
|
};
|
|
@@ -36,6 +46,9 @@ const sui_1 = require("./sui");
|
|
|
36
46
|
const ed25519_1 = require("@mysten/sui/keypairs/ed25519");
|
|
37
47
|
const pino_1 = __importDefault(require("pino"));
|
|
38
48
|
const utils_1 = require("../utils");
|
|
49
|
+
const metrics_1 = require("../metrics");
|
|
50
|
+
const balance_tracker_1 = require("./balance-tracker");
|
|
51
|
+
const client_1 = require("@mysten/sui/client");
|
|
39
52
|
exports.default = {
|
|
40
53
|
command: "sui",
|
|
41
54
|
describe: "Run price pusher for sui. Most of the arguments below are" +
|
|
@@ -93,17 +106,18 @@ exports.default = {
|
|
|
93
106
|
...options.pushingFrequency,
|
|
94
107
|
...options.logLevel,
|
|
95
108
|
...options.controllerLogLevel,
|
|
109
|
+
...options.enableMetrics,
|
|
110
|
+
...options.metricsPort,
|
|
96
111
|
},
|
|
97
112
|
handler: async function (argv) {
|
|
98
|
-
const { endpoint, priceConfigFile, priceServiceEndpoint, mnemonicFile, pushingFrequency, pollingFrequency, pythStateId, wormholeStateId, numGasObjects, ignoreGasObjects, gasBudget, accountIndex, logLevel, controllerLogLevel, } = argv;
|
|
113
|
+
const { endpoint, priceConfigFile, priceServiceEndpoint, mnemonicFile, pushingFrequency, pollingFrequency, pythStateId, wormholeStateId, numGasObjects, ignoreGasObjects, gasBudget, accountIndex, logLevel, controllerLogLevel, enableMetrics, metricsPort, } = argv;
|
|
99
114
|
const logger = (0, pino_1.default)({ level: logLevel });
|
|
100
115
|
const priceConfigs = (0, price_config_1.readPriceConfigFile)(priceConfigFile);
|
|
101
116
|
const hermesClient = new hermes_client_1.HermesClient(priceServiceEndpoint);
|
|
102
117
|
const mnemonic = fs_1.default.readFileSync(mnemonicFile, "utf-8").trim();
|
|
103
118
|
const keypair = ed25519_1.Ed25519Keypair.deriveKeypair(mnemonic, `m/44'/784'/${accountIndex}'/0'/0'`);
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
.toSuiAddress()}`);
|
|
119
|
+
const suiAddress = keypair.getPublicKey().toSuiAddress();
|
|
120
|
+
logger.info(`Pushing updates from wallet address: ${suiAddress}`);
|
|
107
121
|
let priceItems = priceConfigs.map(({ id, alias }) => ({ id, alias }));
|
|
108
122
|
// Better to filter out invalid price items before creating the pyth listener
|
|
109
123
|
const { existingPriceItems, invalidPriceItems } = await (0, utils_1.filterInvalidPriceItems)(hermesClient, priceItems);
|
|
@@ -113,10 +127,34 @@ exports.default = {
|
|
|
113
127
|
.join(", ")}`);
|
|
114
128
|
}
|
|
115
129
|
priceItems = existingPriceItems;
|
|
130
|
+
// Initialize metrics if enabled
|
|
131
|
+
let metrics;
|
|
132
|
+
if (enableMetrics) {
|
|
133
|
+
metrics = new metrics_1.PricePusherMetrics(logger.child({ module: "Metrics" }));
|
|
134
|
+
metrics.start(metricsPort);
|
|
135
|
+
logger.info(`Metrics server started on port ${metricsPort}`);
|
|
136
|
+
}
|
|
116
137
|
const pythListener = new pyth_price_listener_1.PythPriceListener(hermesClient, priceItems, logger.child({ module: "PythPriceListener" }));
|
|
138
|
+
const suiClient = new client_1.SuiClient({ url: endpoint });
|
|
117
139
|
const suiListener = new sui_1.SuiPriceListener(pythStateId, wormholeStateId, endpoint, priceItems, logger.child({ module: "SuiPriceListener" }), { pollingFrequency });
|
|
118
140
|
const suiPusher = await sui_1.SuiPricePusher.createWithAutomaticGasPool(hermesClient, logger.child({ module: "SuiPricePusher" }), pythStateId, wormholeStateId, endpoint, keypair, gasBudget, numGasObjects, ignoreGasObjects);
|
|
119
|
-
const controller = new controller_1.Controller(priceConfigs, pythListener, suiListener, suiPusher, logger.child({ module: "Controller" }, { level: controllerLogLevel }), {
|
|
141
|
+
const controller = new controller_1.Controller(priceConfigs, pythListener, suiListener, suiPusher, logger.child({ module: "Controller" }, { level: controllerLogLevel }), {
|
|
142
|
+
pushingFrequency,
|
|
143
|
+
metrics,
|
|
144
|
+
});
|
|
145
|
+
// Create and start the balance tracker if metrics are enabled
|
|
146
|
+
if (metrics) {
|
|
147
|
+
const balanceTracker = (0, balance_tracker_1.createSuiBalanceTracker)({
|
|
148
|
+
client: suiClient,
|
|
149
|
+
address: suiAddress,
|
|
150
|
+
network: "sui",
|
|
151
|
+
updateInterval: pushingFrequency,
|
|
152
|
+
metrics,
|
|
153
|
+
logger,
|
|
154
|
+
});
|
|
155
|
+
// Start the balance tracker
|
|
156
|
+
await balanceTracker.start();
|
|
157
|
+
}
|
|
120
158
|
controller.start();
|
|
121
159
|
},
|
|
122
160
|
};
|
package/lib/sui/sui.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sui.d.ts","sourceRoot":"","sources":["../../src/sui/sui.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,SAAS,EACT,SAAS,EACV,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,SAAS,EAAE,YAAY,EAAkB,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAM1D,KAAK,QAAQ,GAAG,MAAM,CAAC;AAGvB,qBAAa,gBAAiB,SAAQ,kBAAkB;IACtD,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,QAAQ,CAAY;IAC5B,OAAO,CAAC,MAAM,CAAS;gBAGrB,WAAW,EAAE,QAAQ,EACrB,eAAe,EAAE,QAAQ,EACzB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,SAAS,EAAE,EACvB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;QACN,gBAAgB,EAAE,iBAAiB,CAAC;KACrC;IAYG,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"sui.d.ts","sourceRoot":"","sources":["../../src/sui/sui.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,SAAS,EACT,SAAS,EACV,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,SAAS,EAAE,YAAY,EAAkB,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAM1D,KAAK,QAAQ,GAAG,MAAM,CAAC;AAGvB,qBAAa,gBAAiB,SAAQ,kBAAkB;IACtD,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,QAAQ,CAAY;IAC5B,OAAO,CAAC,MAAM,CAAS;gBAGrB,WAAW,EAAE,QAAQ,EACrB,eAAe,EAAE,QAAQ,EACzB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,SAAS,EAAE,EACvB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;QACN,gBAAgB,EAAE,iBAAiB,CAAC;KACrC;IAYG,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;CA4C3E;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,cAAe,YAAW,YAAY;IAE/C,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,UAAU;gBAND,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,SAAS,EAC5B,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,YAAY,EAAE,EACvB,UAAU,EAAE,aAAa;IAGnC;;;;;;OAMG;WACU,YAAY,CACvB,QAAQ,EAAE,SAAS,EACnB,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,QAAQ,CAAC;IAyBpB;;;OAGG;WACU,0BAA0B,CACrC,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EACrB,gBAAgB,EAAE,MAAM,EAAE,GACzB,OAAO,CAAC,cAAc,CAAC;IAkCpB,eAAe,CACnB,QAAQ,EAAE,MAAM,EAAE,EAClB,cAAc,EAAE,MAAM,EAAE,GACvB,OAAO,CAAC,IAAI,CAAC;IA6ChB,iGAAiG;YACnF,qBAAqB;IAInC,sEAAsE;YACxD,oBAAoB;mBAyDb,iBAAiB;mBAsDjB,yBAAyB;mBAgBzB,cAAc;mBAiCd,mBAAmB;mBAwCnB,oBAAoB;CAiE1C"}
|
package/lib/ton/command.js
CHANGED
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
37
|
};
|
package/lib/utils.d.ts
CHANGED
|
@@ -3,9 +3,9 @@ import { PriceItem } from "./interface";
|
|
|
3
3
|
export type PctNumber = number;
|
|
4
4
|
export type DurationInSeconds = number;
|
|
5
5
|
export declare const txSpeeds: readonly ["slow", "standard", "fast"];
|
|
6
|
-
export type TxSpeed = typeof txSpeeds[number];
|
|
6
|
+
export type TxSpeed = (typeof txSpeeds)[number];
|
|
7
7
|
export declare const customGasChainIds: readonly [137];
|
|
8
|
-
export type CustomGasChainId = typeof customGasChainIds[number];
|
|
8
|
+
export type CustomGasChainId = (typeof customGasChainIds)[number];
|
|
9
9
|
export declare function sleep(ms: number): Promise<void>;
|
|
10
10
|
export declare function removeLeading0x(id: HexString): HexString;
|
|
11
11
|
export declare const addLeading0x: (id: HexString) => `0x${string}`;
|
package/lib/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAC/B,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC;AACvC,eAAO,MAAM,QAAQ,uCAAwC,CAAC;AAC9D,MAAM,MAAM,OAAO,GAAG,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAC/B,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC;AACvC,eAAO,MAAM,QAAQ,uCAAwC,CAAC;AAC9D,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AAChD,eAAO,MAAM,iBAAiB,gBAAiB,CAAC;AAChD,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAElE,wBAAsB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAErD;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,SAAS,GAAG,SAAS,CAKxD;AAED,eAAO,MAAM,YAAY,GAAI,IAAI,SAAS,KAAG,KAAK,MAAM,EACrB,CAAC;AAKpC,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAStD;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,SAAS,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EACpC,WAAW,SAAS,OAAO,CAAC,MAAM,CAAC,EACnC,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,eAOnC;AAED,eAAO,MAAM,aAAa,GAAI,CAAC,EAAE,OAAO,CAAC,GAAG,SAAS,KAAG,CAMvD,CAAC;AAEF,wBAAsB,uBAAuB,CAC3C,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,SAAS,EAAE,GACtB,OAAO,CAAC;IACT,kBAAkB,EAAE,SAAS,EAAE,CAAC;IAChC,iBAAiB,EAAE,SAAS,EAAE,CAAC;CAChC,CAAC,CAqBD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pythnetwork/price-pusher",
|
|
3
|
-
"version": "9.0
|
|
3
|
+
"version": "9.2.0",
|
|
4
4
|
"description": "Pyth Price Pusher",
|
|
5
5
|
"homepage": "https://pyth.network",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -21,13 +21,15 @@
|
|
|
21
21
|
},
|
|
22
22
|
"scripts": {
|
|
23
23
|
"build": "tsc",
|
|
24
|
-
"format": "prettier --write \"src/**/*.ts\"",
|
|
25
|
-
"
|
|
24
|
+
"fix:format": "prettier --write \"src/**/*.ts\"",
|
|
25
|
+
"fix:lint": "eslint src/ --fix --max-warnings 0",
|
|
26
|
+
"test:format": "prettier --check \"src/**/*.ts\"",
|
|
27
|
+
"test:lint": "eslint src/ --max-warnings 0",
|
|
26
28
|
"start": "node lib/index.js",
|
|
27
29
|
"dev": "ts-node src/index.ts",
|
|
28
30
|
"prepublishOnly": "pnpm run build && pnpm run test:lint",
|
|
29
31
|
"preversion": "pnpm run test:lint",
|
|
30
|
-
"version": "pnpm run format && git add -A src"
|
|
32
|
+
"version": "pnpm run test:format && pnpm run test:lint && git add -A src"
|
|
31
33
|
},
|
|
32
34
|
"keywords": [
|
|
33
35
|
"pyth",
|
|
@@ -43,6 +45,7 @@
|
|
|
43
45
|
"license": "Apache-2.0",
|
|
44
46
|
"devDependencies": {
|
|
45
47
|
"@types/ethereum-protocol": "^1.0.2",
|
|
48
|
+
"@types/express": "^4.17.21",
|
|
46
49
|
"@types/jest": "^27.4.1",
|
|
47
50
|
"@types/yargs": "^17.0.10",
|
|
48
51
|
"@typescript-eslint/eslint-plugin": "^6.0.0",
|
|
@@ -50,15 +53,16 @@
|
|
|
50
53
|
"eslint": "^8.13.0",
|
|
51
54
|
"jest": "^29.7.0",
|
|
52
55
|
"pino-pretty": "^11.2.1",
|
|
53
|
-
"prettier": "
|
|
56
|
+
"prettier": "catalog:",
|
|
54
57
|
"ts-jest": "^29.1.1",
|
|
55
|
-
"ts-node": "
|
|
56
|
-
"typescript": "
|
|
58
|
+
"ts-node": "catalog:",
|
|
59
|
+
"typescript": "catalog:"
|
|
57
60
|
},
|
|
58
61
|
"dependencies": {
|
|
59
62
|
"@coral-xyz/anchor": "^0.30.0",
|
|
60
|
-
"@injectivelabs/networks": "
|
|
61
|
-
"@injectivelabs/sdk-ts": "1.
|
|
63
|
+
"@injectivelabs/networks": "1.14.47",
|
|
64
|
+
"@injectivelabs/sdk-ts": "1.14.49",
|
|
65
|
+
"@injectivelabs/utils": "^1.14.47",
|
|
62
66
|
"@mysten/sui": "^1.3.0",
|
|
63
67
|
"@pythnetwork/hermes-client": "^1.3.1",
|
|
64
68
|
"@pythnetwork/price-service-sdk": "^1.8.0",
|
|
@@ -69,18 +73,21 @@
|
|
|
69
73
|
"@pythnetwork/pyth-ton-js": "0.1.2",
|
|
70
74
|
"@pythnetwork/solana-utils": "0.4.4",
|
|
71
75
|
"@solana/web3.js": "^1.93.0",
|
|
76
|
+
"@ton/core": "^0.59.0",
|
|
72
77
|
"@ton/crypto": "^3.3.0",
|
|
73
78
|
"@ton/ton": "^15.1.0",
|
|
74
79
|
"@types/pino": "^7.0.5",
|
|
75
80
|
"aptos": "^1.8.5",
|
|
81
|
+
"express": "^4.18.2",
|
|
76
82
|
"fuels": "^0.94.5",
|
|
77
83
|
"jito-ts": "^3.0.1",
|
|
78
84
|
"joi": "^17.6.0",
|
|
79
85
|
"near-api-js": "^3.0.2",
|
|
80
86
|
"pino": "^9.2.0",
|
|
87
|
+
"prom-client": "^15.1.0",
|
|
81
88
|
"viem": "^2.19.4",
|
|
82
89
|
"yaml": "^2.1.1",
|
|
83
90
|
"yargs": "^17.5.1"
|
|
84
91
|
},
|
|
85
|
-
"gitHead": "
|
|
92
|
+
"gitHead": "da6c1185d9fce5e6ca2df4f7e6e1f5edc9b366eb"
|
|
86
93
|
}
|