PHP WebShell
Текущая директория: /usr/lib/node_modules/bitgo/node_modules/@bitgo/sdk-coin-polyx/dist/src/lib
Просмотр файла: utils.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Utils = void 0;
const abstract_substrate_1 = require("@bitgo/abstract-substrate");
const statics_1 = require("@bitgo/statics");
const resources_1 = require("../resources");
class Utils extends abstract_substrate_1.Utils {
/**
* Get the appropriate address format based on network type
* Returns 12 for mainnet and 42 for testnet
*
* @param coinName The name of the coin
* @returns The address format to use
*/
getAddressFormat(coinName) {
const isMainnet = coinName.toLowerCase() === 'polyx';
return isMainnet ? 12 : 42;
}
getMaterial(networkType) {
return (networkType === statics_1.NetworkType.MAINNET ? resources_1.mainnetMaterial : resources_1.testnetMaterial);
}
decodeMethodName(call, registry) {
// Handle both callIndex and method formats
const callWithIndex = call;
const methodIdentifier = callWithIndex.callIndex || call.method;
if (typeof methodIdentifier === 'string') {
// Check if it looks like a hex callIndex
if (methodIdentifier.startsWith('0x') && methodIdentifier.length > 2) {
try {
const decodedCall = registry.findMetaCall(new Uint8Array(Buffer.from(methodIdentifier.replace('0x', ''), 'hex')));
return decodedCall.method;
}
catch (e) {
// Fallback: assume it's already the method name
return methodIdentifier;
}
}
else {
// Already a simple method name
return methodIdentifier;
}
}
// Fallback
return String(methodIdentifier);
}
}
exports.Utils = Utils;
const utils = new Utils();
exports.default = utils;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGtFQUErRTtBQUMvRSw0Q0FBNkM7QUFFN0MsNENBQWdFO0FBR2hFLE1BQWEsS0FBTSxTQUFRLDBCQUFjO0lBQ3ZDOzs7Ozs7T0FNRztJQUNILGdCQUFnQixDQUFDLFFBQWdCO1FBQy9CLE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxXQUFXLEVBQUUsS0FBSyxPQUFPLENBQUM7UUFDckQsT0FBTyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxXQUFXLENBQUMsV0FBd0I7UUFDbEMsT0FBTyxDQUFDLFdBQVcsS0FBSyxxQkFBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsMkJBQWUsQ0FBQyxDQUFDLENBQUMsMkJBQWUsQ0FBa0MsQ0FBQztJQUNwSCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsSUFBcUIsRUFBRSxRQUFzQjtRQUM1RCwyQ0FBMkM7UUFDM0MsTUFBTSxhQUFhLEdBQUcsSUFBZ0QsQ0FBQztRQUN2RSxNQUFNLGdCQUFnQixHQUFHLGFBQWEsQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUVoRSxJQUFJLE9BQU8sZ0JBQWdCLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDekMseUNBQXlDO1lBQ3pDLElBQUksZ0JBQWdCLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLGdCQUFnQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDckUsSUFBSSxDQUFDO29CQUNILE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQ3ZDLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUN2RSxDQUFDO29CQUNGLE9BQU8sV0FBVyxDQUFDLE1BQU0sQ0FBQztnQkFDNUIsQ0FBQztnQkFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO29CQUNYLGdEQUFnRDtvQkFDaEQsT0FBTyxnQkFBZ0IsQ0FBQztnQkFDMUIsQ0FBQztZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTiwrQkFBK0I7Z0JBQy9CLE9BQU8sZ0JBQWdCLENBQUM7WUFDMUIsQ0FBQztRQUNILENBQUM7UUFFRCxXQUFXO1FBQ1gsT0FBTyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNsQyxDQUFDO0NBQ0Y7QUEzQ0Qsc0JBMkNDO0FBRUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztBQUMxQixrQkFBZSxLQUFLLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVdGlscyBhcyBTdWJzdHJhdGVVdGlscywgSW50ZXJmYWNlIH0gZnJvbSAnQGJpdGdvL2Fic3RyYWN0LXN1YnN0cmF0ZSc7XG5pbXBvcnQgeyBOZXR3b3JrVHlwZSB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcbmltcG9ydCB7IFR5cGVSZWdpc3RyeSB9IGZyb20gJ0BzdWJzdHJhdGUvdHh3cmFwcGVyLWNvcmUvbGliL3R5cGVzJztcbmltcG9ydCB7IG1haW5uZXRNYXRlcmlhbCwgdGVzdG5ldE1hdGVyaWFsIH0gZnJvbSAnLi4vcmVzb3VyY2VzJztcbmltcG9ydCB7IEJhdGNoQ2FsbE9iamVjdCB9IGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgY2xhc3MgVXRpbHMgZXh0ZW5kcyBTdWJzdHJhdGVVdGlscyB7XG4gIC8qKlxuICAgKiBHZXQgdGhlIGFwcHJvcHJpYXRlIGFkZHJlc3MgZm9ybWF0IGJhc2VkIG9uIG5ldHdvcmsgdHlwZVxuICAgKiBSZXR1cm5zIDEyIGZvciBtYWlubmV0IGFuZCA0MiBmb3IgdGVzdG5ldFxuICAgKlxuICAgKiBAcGFyYW0gY29pbk5hbWUgVGhlIG5hbWUgb2YgdGhlIGNvaW5cbiAgICogQHJldHVybnMgVGhlIGFkZHJlc3MgZm9ybWF0IHRvIHVzZVxuICAgKi9cbiAgZ2V0QWRkcmVzc0Zvcm1hdChjb2luTmFtZTogc3RyaW5nKTogbnVtYmVyIHtcbiAgICBjb25zdCBpc01haW5uZXQgPSBjb2luTmFtZS50b0xvd2VyQ2FzZSgpID09PSAncG9seXgnO1xuICAgIHJldHVybiBpc01haW5uZXQgPyAxMiA6IDQyO1xuICB9XG5cbiAgZ2V0TWF0ZXJpYWwobmV0d29ya1R5cGU6IE5ldHdvcmtUeXBlKTogSW50ZXJmYWNlLk1hdGVyaWFsIHtcbiAgICByZXR1cm4gKG5ldHdvcmtUeXBlID09PSBOZXR3b3JrVHlwZS5NQUlOTkVUID8gbWFpbm5ldE1hdGVyaWFsIDogdGVzdG5ldE1hdGVyaWFsKSBhcyB1bmtub3duIGFzIEludGVyZmFjZS5NYXRlcmlhbDtcbiAgfVxuXG4gIGRlY29kZU1ldGhvZE5hbWUoY2FsbDogQmF0Y2hDYWxsT2JqZWN0LCByZWdpc3RyeTogVHlwZVJlZ2lzdHJ5KTogc3RyaW5nIHtcbiAgICAvLyBIYW5kbGUgYm90aCBjYWxsSW5kZXggYW5kIG1ldGhvZCBmb3JtYXRzXG4gICAgY29uc3QgY2FsbFdpdGhJbmRleCA9IGNhbGwgYXMgQmF0Y2hDYWxsT2JqZWN0ICYgeyBjYWxsSW5kZXg/OiBzdHJpbmcgfTtcbiAgICBjb25zdCBtZXRob2RJZGVudGlmaWVyID0gY2FsbFdpdGhJbmRleC5jYWxsSW5kZXggfHwgY2FsbC5tZXRob2Q7XG5cbiAgICBpZiAodHlwZW9mIG1ldGhvZElkZW50aWZpZXIgPT09ICdzdHJpbmcnKSB7XG4gICAgICAvLyBDaGVjayBpZiBpdCBsb29rcyBsaWtlIGEgaGV4IGNhbGxJbmRleFxuICAgICAgaWYgKG1ldGhvZElkZW50aWZpZXIuc3RhcnRzV2l0aCgnMHgnKSAmJiBtZXRob2RJZGVudGlmaWVyLmxlbmd0aCA+IDIpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCBkZWNvZGVkQ2FsbCA9IHJlZ2lzdHJ5LmZpbmRNZXRhQ2FsbChcbiAgICAgICAgICAgIG5ldyBVaW50OEFycmF5KEJ1ZmZlci5mcm9tKG1ldGhvZElkZW50aWZpZXIucmVwbGFjZSgnMHgnLCAnJyksICdoZXgnKSlcbiAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiBkZWNvZGVkQ2FsbC5tZXRob2Q7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAvLyBGYWxsYmFjazogYXNzdW1lIGl0J3MgYWxyZWFkeSB0aGUgbWV0aG9kIG5hbWVcbiAgICAgICAgICByZXR1cm4gbWV0aG9kSWRlbnRpZmllcjtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gQWxyZWFkeSBhIHNpbXBsZSBtZXRob2QgbmFtZVxuICAgICAgICByZXR1cm4gbWV0aG9kSWRlbnRpZmllcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGYWxsYmFja1xuICAgIHJldHVybiBTdHJpbmcobWV0aG9kSWRlbnRpZmllcik7XG4gIH1cbn1cblxuY29uc3QgdXRpbHMgPSBuZXcgVXRpbHMoKTtcbmV4cG9ydCBkZWZhdWx0IHV0aWxzO1xuIl19Выполнить команду
Для локальной разработки. Не используйте в интернете!