@marinade.finance/cli-common
Advanced tools
Comparing version 1.0.10 to 1.1.0
{ | ||
"name": "@marinade.finance/cli-common", | ||
"version": "1.0.10", | ||
"version": "1.1.0", | ||
"description": "CLI tooling", | ||
@@ -25,16 +25,24 @@ "repository": { | ||
"devDependencies": { | ||
"pino": "^8.15.0", | ||
"@solana/web3.js": "^1.78.4", | ||
"pino": "^8.15.1", | ||
"@solana/web3.js": "^1.78.5", | ||
"borsh": "^0.7.0", | ||
"@types/expand-tilde": "^2.0.0", | ||
"expand-tilde": "^2.0.2", | ||
"bs58": "^5.0.0" | ||
"bs58": "^5.0.0", | ||
"bn.js": "^5.2.1", | ||
"@types/bn.js": "^5.1.0", | ||
"yaml": "^2.3.2" | ||
}, | ||
"peerDependencies": { | ||
"pino": "^8.15.0", | ||
"@solana/web3.js": "^1.78.4", | ||
"pino": "^8.15.1", | ||
"@solana/web3.js": "^1.78.5", | ||
"borsh": "^0.7.0", | ||
"expand-tilde": "^2.0.2", | ||
"bs58": "^5.0.0" | ||
"bs58": "^5.0.0", | ||
"bn.js": "^5.2.1", | ||
"yaml": "^2.3.2" | ||
}, | ||
"engines": { | ||
"node": ">=16.0.0" | ||
}, | ||
"scripts": { | ||
@@ -41,0 +49,0 @@ "test": "echo \"Error: no test specified, go to project root\" && exit 1" |
@@ -15,4 +15,9 @@ "use strict"; | ||
catch (err) { | ||
const keypair = await parseKeypair(pubkeyOrPath); | ||
return keypair.publicKey; | ||
try { | ||
const keypair = await parseKeypair(pubkeyOrPath); | ||
return keypair.publicKey; | ||
} | ||
catch (err2) { | ||
return new web3_js_1.PublicKey(new Uint8Array(JSON.parse(await parseFile(pubkeyOrPath)))); | ||
} | ||
} | ||
@@ -23,7 +28,6 @@ } | ||
try { | ||
// TODO: reading public key from file is not supported | ||
return new web3_js_1.PublicKey(pubkeyOrPath); | ||
return await parseKeypair(pubkeyOrPath); | ||
} | ||
catch (err) { | ||
return await parseKeypair(pubkeyOrPath); | ||
return await parsePubkey(pubkeyOrPath); | ||
} | ||
@@ -30,0 +34,0 @@ } |
@@ -11,4 +11,7 @@ import { Connection, Transaction, VersionedTransactionResponse, SimulatedTransactionResponse, Keypair, Signer } from '@solana/web3.js'; | ||
printOnly?: boolean; | ||
logger: Logger; | ||
logger?: Logger; | ||
}): Promise<VersionedTransactionResponse | SimulatedTransactionResponse | undefined>; | ||
export declare function logWarn(logger: Logger | undefined, data: any): void; | ||
export declare function logDebug(logger: Logger | undefined, data: any): void; | ||
export declare function executeTxSimple(connection: Connection, transaction: Transaction, signers?: (Wallet | Keypair | Signer)[]): Promise<VersionedTransactionResponse | SimulatedTransactionResponse | undefined>; | ||
/** | ||
@@ -15,0 +18,0 @@ * Returns a string representation Transaction object. |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.debugStr = exports.executeTx = void 0; | ||
exports.debugStr = exports.executeTxSimple = exports.logDebug = exports.logWarn = exports.executeTx = void 0; | ||
const web3_js_1 = require("@solana/web3.js"); | ||
@@ -34,5 +34,5 @@ const error_1 = require("./error"); | ||
if (simulate) { | ||
logger.warn('[[Simulation mode]]'); | ||
logWarn(logger, '[[Simulation mode]]'); | ||
result = (await connection.simulateTransaction(transaction)).value; | ||
logger.debug(result); | ||
logDebug(logger, result); | ||
if (result.err) { | ||
@@ -53,2 +53,3 @@ throw new web3_js_1.SendTransactionError(result.err, result.logs || undefined); | ||
let txSearchConnection = connection; | ||
let timeout = 0; | ||
if (connection.commitment === 'processed') { | ||
@@ -58,4 +59,15 @@ txSearchConnection = new web3_js_1.Connection(connection.rpcEndpoint, { | ||
}); | ||
// TODO: this could be parametrized, max supported version too | ||
// if commitment was 'processed' for sending we await for 'confirmed' | ||
timeout = 1000 * 15; // 15 seconds | ||
} | ||
const txRes = await txSearchConnection.getTransaction(txSig); | ||
let txRes = await txSearchConnection.getTransaction(txSig, { | ||
maxSupportedTransactionVersion: 0, | ||
}); | ||
const startTime = Date.now(); | ||
while (txRes === null && Date.now() - startTime < timeout) { | ||
txRes = await txSearchConnection.getTransaction(txSig, { | ||
maxSupportedTransactionVersion: 0, | ||
}); | ||
} | ||
if (txRes === null) { | ||
@@ -65,4 +77,4 @@ throw new Error(`Transaction ${txSig} not found`); | ||
result = txRes; | ||
logger.debug('Transaction signature: %s', txSig); | ||
logger.debug((_b = txRes.meta) === null || _b === void 0 ? void 0 : _b.logMessages); | ||
logDebug(logger, 'Transaction signature: ' + txSig); | ||
logDebug(logger, (_b = txRes.meta) === null || _b === void 0 ? void 0 : _b.logMessages); | ||
} | ||
@@ -74,4 +86,6 @@ } | ||
cause: e, | ||
logs: e instanceof web3_js_1.SendTransactionError ? e.logs : undefined, | ||
transaction: logger.isLevelEnabled('debug') ? transaction : undefined, | ||
logs: e.logs | ||
? e.logs | ||
: undefined, | ||
transaction: !logger || logger.isLevelEnabled('debug') ? transaction : undefined, | ||
}); | ||
@@ -82,2 +96,31 @@ } | ||
exports.executeTx = executeTx; | ||
// eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
function logWarn(logger, data) { | ||
if (logger) { | ||
logger.warn(data); | ||
} | ||
else { | ||
console.log(data); | ||
} | ||
} | ||
exports.logWarn = logWarn; | ||
// eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
function logDebug(logger, data) { | ||
if (logger) { | ||
logger.debug(data); | ||
} | ||
else { | ||
console.debug(data); | ||
} | ||
} | ||
exports.logDebug = logDebug; | ||
async function executeTxSimple(connection, transaction, signers) { | ||
return await executeTx({ | ||
connection, | ||
transaction, | ||
signers, | ||
errMessage: 'Error executing transaction', | ||
}); | ||
} | ||
exports.executeTxSimple = executeTxSimple; | ||
/** | ||
@@ -84,0 +127,0 @@ * Returns a string representation Transaction object. |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
60213
40
1008
7
9