@chain-registry/utils
Advanced tools
Comparing version 1.1.0 to 1.2.0
@@ -6,2 +6,10 @@ # Change Log | ||
# [1.2.0](https://github.com/cosmology-tech/chain-registry/compare/@chain-registry/utils@1.1.0...@chain-registry/utils@1.2.0) (2022-10-20) | ||
**Note:** Version bump only for package @chain-registry/utils | ||
# [1.1.0](https://github.com/cosmology-tech/chain-registry/compare/@chain-registry/utils@1.0.1...@chain-registry/utils@1.1.0) (2022-10-20) | ||
@@ -8,0 +16,0 @@ |
@@ -6,5 +6,3 @@ "use strict"; | ||
}); | ||
var _utils = require("./utils"); | ||
Object.keys(_utils).forEach(function (key) { | ||
@@ -11,0 +9,0 @@ if (key === "default" || key === "__esModule") return; |
"use strict"; | ||
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); | ||
Object.defineProperty(exports, "__esModule", { | ||
@@ -9,27 +8,15 @@ value: true | ||
exports.ibcDenom = exports.getWasmChannel = exports.getTransferChannel = exports.getNonTransferChannel = exports.getIbcInfo = exports.getIbcDenomByBase = exports.getIbcAssets = exports.getIbcAssetPath = exports.getCw20Assets = exports.getAssetLists = void 0; | ||
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); | ||
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray")); | ||
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); | ||
var _sha = require("sha.js"); | ||
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } | ||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } | ||
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } | ||
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } | ||
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } | ||
var ibcDenom = function ibcDenom(paths, coinMinimalDenom) { | ||
var prefixes = []; | ||
var _iterator = _createForOfIteratorHelper(paths), | ||
_step; | ||
_step; | ||
try { | ||
@@ -45,3 +32,2 @@ for (_iterator.s(); !(_step = _iterator.n()).done;) { | ||
} | ||
var prefix = prefixes.join('/'); | ||
@@ -51,5 +37,3 @@ var denom = "".concat(prefix, "/").concat(coinMinimalDenom); | ||
}; | ||
exports.ibcDenom = ibcDenom; | ||
var findInfo = function findInfo(ibc, to, from) { | ||
@@ -60,9 +44,6 @@ return ibc.find(function (i) { | ||
}; | ||
var getIbcInfo = function getIbcInfo(ibc, chain, counterparty) { | ||
return findInfo(ibc, chain, counterparty) || findInfo(ibc, counterparty, chain); | ||
}; | ||
exports.getIbcInfo = getIbcInfo; | ||
var getTransferChannel = function getTransferChannel(info) { | ||
@@ -73,5 +54,3 @@ return info.channels.find(function (channel) { | ||
}; | ||
exports.getTransferChannel = getTransferChannel; | ||
var getNonTransferChannel = function getNonTransferChannel(info) { | ||
@@ -82,5 +61,3 @@ return info.channels.find(function (channel) { | ||
}; | ||
exports.getNonTransferChannel = getNonTransferChannel; | ||
var getWasmChannel = function getWasmChannel(info) { | ||
@@ -91,22 +68,14 @@ return info.channels.find(function (channel) { | ||
}; | ||
exports.getWasmChannel = getWasmChannel; | ||
var getIbcAssetPath = function getIbcAssetPath(ibc, chain, counterparty, assets, base) { | ||
var _asset$traces$filter, _asset$traces, _asset$traces$filter2; | ||
var ibcInfo = getIbcInfo(ibc, chain, counterparty); | ||
if (!ibcInfo) { | ||
return []; | ||
} | ||
var channel = base.startsWith('cw20:') ? getWasmChannel(ibcInfo) : getTransferChannel(ibcInfo); | ||
if (!channel) { | ||
return []; | ||
} | ||
var channelInfo; | ||
if (ibcInfo.chain_1.chain_name === chain) { | ||
@@ -117,3 +86,2 @@ channelInfo = channel.chain_1; | ||
} | ||
var memo = [channelInfo]; | ||
@@ -124,11 +92,8 @@ var assetList = assets.find(function (_ref) { | ||
}); | ||
if (!assetList) { | ||
return memo; | ||
} | ||
var asset = assetList.assets.find(function (asset) { | ||
return asset.base === base; | ||
}); | ||
if (!asset) { | ||
@@ -138,36 +103,26 @@ console.log("no ".concat(base, " found in ").concat(counterparty)); | ||
} | ||
var traces = (_asset$traces$filter = (_asset$traces = asset.traces) === null || _asset$traces === void 0 ? void 0 : (_asset$traces$filter2 = _asset$traces.filter) === null || _asset$traces$filter2 === void 0 ? void 0 : _asset$traces$filter2.call(_asset$traces, function (trace) { | ||
return trace.type === 'ibc' || trace.type === 'ibc-cw20'; | ||
})) !== null && _asset$traces$filter !== void 0 ? _asset$traces$filter : []; | ||
if (!traces.length) { | ||
return memo; | ||
} | ||
if (traces.length > 1) { | ||
throw new Error('contact maintainers: multi-hop not yet supported'); | ||
} | ||
var _traces = (0, _slicedToArray2["default"])(traces, 1), | ||
trace = _traces[0]; | ||
return [].concat(memo, (0, _toConsumableArray2["default"])(getIbcAssetPath(ibc, counterparty, trace.counterparty.chain_name, assets, trace.counterparty.base_denom // base | ||
trace = _traces[0]; | ||
return [].concat(memo, (0, _toConsumableArray2["default"])(getIbcAssetPath(ibc, counterparty, trace.counterparty.chain_name, assets, trace.counterparty.base_denom | ||
// base | ||
))); | ||
}; | ||
exports.getIbcAssetPath = getIbcAssetPath; | ||
var getIbcDenomByBase = function getIbcDenomByBase(ibc, chain, counterparty, assets, base) { | ||
var ibcInfo = getIbcInfo(ibc, chain, counterparty); | ||
if (ibcInfo) { | ||
var _asset$traces2, _asset$traces2$find, _ibcTrace$counterpart, _ibcTrace$counterpart2; | ||
var channel = base.startsWith('cw20:') ? getWasmChannel(ibcInfo) : getTransferChannel(ibcInfo); | ||
if (!channel) { | ||
return; | ||
} | ||
var ibcPath = getIbcAssetPath(ibc, chain, counterparty, assets, base); | ||
@@ -178,13 +133,10 @@ var assetList = assets.find(function (_ref2) { | ||
}); | ||
if (!assetList) { | ||
console.warn("missing asset list for ".concat(counterparty)); // could be incorrect... | ||
console.warn("missing asset list for ".concat(counterparty)); | ||
// could be incorrect... | ||
return ibcDenom(ibcPath, base); | ||
} | ||
var asset = assetList.assets.find(function (asset) { | ||
return asset.base === base; | ||
}); | ||
if (!asset) { | ||
@@ -194,3 +146,2 @@ console.warn("no ".concat(base, " found in ").concat(counterparty)); | ||
} | ||
var ibcTrace = (_asset$traces2 = asset.traces) === null || _asset$traces2 === void 0 ? void 0 : (_asset$traces2$find = _asset$traces2.find) === null || _asset$traces2$find === void 0 ? void 0 : _asset$traces2$find.call(_asset$traces2, function (trace) { | ||
@@ -203,5 +154,3 @@ return trace.type === 'ibc'; | ||
}; | ||
exports.getIbcDenomByBase = getIbcDenomByBase; | ||
var getIbcAssets = function getIbcAssets(chainName, ibc, assets) { | ||
@@ -220,3 +169,2 @@ var chainIbcInfo = ibc.filter(function (i) { | ||
}); | ||
if (!counterpartyAssets) { | ||
@@ -226,11 +174,9 @@ // console.warn('asset not found: ' + counterparty); | ||
} | ||
var ibcAssets = counterpartyAssets.assets.filter(function (a) { | ||
return !a.base.startsWith('cw20:'); | ||
}).map(function (asset) { | ||
var denom = getIbcDenomByBase(ibc, chainName, counterparty, // | ||
var denom = getIbcDenomByBase(ibc, chainName, counterparty, | ||
// | ||
assets, asset.base); | ||
var newAsset = _objectSpread({}, asset); | ||
newAsset.base = denom; | ||
@@ -240,3 +186,2 @@ newAsset.denom_units = newAsset.denom_units.map(function (unit) { | ||
var newUnit = _objectSpread({}, unit); | ||
newUnit.denom = denom; | ||
@@ -246,3 +191,2 @@ newUnit.aliases = [unit.denom]; | ||
} | ||
return unit; | ||
@@ -270,10 +214,11 @@ }); | ||
base_denom: asset.denom_units[0].aliases[0], | ||
chain_name: v.counterparty.chain_name // port: v.counterparty.port_id | ||
chain_name: v.counterparty.chain_name | ||
// port: v.counterparty.port_id | ||
}, | ||
}, | ||
chain: { | ||
// dst_denom | ||
channel_id: v.chain.channel_id // chain_name: v.chain.chain_name, | ||
channel_id: v.chain.channel_id | ||
// chain_name: v.chain.chain_name, | ||
// port: v.chain.port_id | ||
} | ||
@@ -287,3 +232,2 @@ }] | ||
}); | ||
m[v.chain.chain_name].push(obj); | ||
@@ -301,5 +245,3 @@ return m; | ||
}; | ||
exports.getIbcAssets = getIbcAssets; | ||
var getCw20Assets = function getCw20Assets(chainName, ibc, assets) { | ||
@@ -318,3 +260,2 @@ var chainIbcInfo = ibc.filter(function (i) { | ||
}); | ||
if (!counterpartyAssets) { | ||
@@ -324,11 +265,9 @@ // console.warn('asset not found: ' + counterparty); | ||
} | ||
var cw20Assets = counterpartyAssets.assets.filter(function (a) { | ||
return a.base.startsWith('cw20:'); | ||
}).map(function (asset) { | ||
var denom = getIbcDenomByBase(ibc, chainName, counterparty, // | ||
var denom = getIbcDenomByBase(ibc, chainName, counterparty, | ||
// | ||
assets, asset.base); | ||
var newAsset = _objectSpread({}, asset); | ||
newAsset.base = denom; | ||
@@ -338,3 +277,2 @@ newAsset.denom_units = newAsset.denom_units.map(function (unit) { | ||
var newUnit = _objectSpread({}, unit); | ||
newUnit.denom = denom; | ||
@@ -344,3 +282,2 @@ newUnit.aliases = [unit.denom]; | ||
} | ||
return unit; | ||
@@ -352,3 +289,2 @@ }); | ||
var channel = getWasmChannel(ibcInfo); | ||
if (!channel) { | ||
@@ -363,3 +299,2 @@ // console.warn( | ||
} | ||
return { | ||
@@ -388,4 +323,4 @@ chain: _objectSpread(_objectSpread({}, chainIbc), channel[chainIs]), | ||
port: v.chain.port_id, | ||
channel_id: v.chain.channel_id // chain_name: v.chain.chain_name, | ||
channel_id: v.chain.channel_id | ||
// chain_name: v.chain.chain_name, | ||
} | ||
@@ -399,3 +334,2 @@ }] | ||
}); | ||
m[v.chain.chain_name].push(obj); | ||
@@ -413,5 +347,3 @@ return m; | ||
}; | ||
exports.getCw20Assets = getCw20Assets; | ||
var getAssetLists = function getAssetLists(chainName, ibc, assets) { | ||
@@ -426,7 +358,5 @@ var ibcAssetLists = getIbcAssets(chainName, ibc, assets); | ||
}); | ||
if (cw20) { | ||
[].push.apply(assets, cw20.assets); | ||
} | ||
return [{ | ||
@@ -438,3 +368,2 @@ chain_name: chain, | ||
}; | ||
exports.getAssetLists = getAssetLists; |
{ | ||
"name": "@chain-registry/utils", | ||
"version": "1.1.0", | ||
"version": "1.2.0", | ||
"description": "Chain Registry Utils", | ||
@@ -44,4 +44,4 @@ "author": "Dan Lynch <pyramation@gmail.com>", | ||
"devDependencies": { | ||
"@babel/cli": "7.18.10", | ||
"@babel/core": "7.19.1", | ||
"@babel/cli": "7.19.3", | ||
"@babel/core": "7.19.6", | ||
"@babel/eslint-parser": "^7.19.1", | ||
@@ -51,15 +51,15 @@ "@babel/node": "^7.19.1", | ||
"@babel/plugin-proposal-export-default-from": "7.18.10", | ||
"@babel/plugin-proposal-object-rest-spread": "7.18.9", | ||
"@babel/plugin-transform-runtime": "7.19.1", | ||
"@babel/preset-env": "7.19.1", | ||
"@babel/plugin-proposal-object-rest-spread": "7.19.4", | ||
"@babel/plugin-transform-runtime": "7.19.6", | ||
"@babel/preset-env": "7.19.4", | ||
"@babel/preset-typescript": "^7.17.12", | ||
"@types/jest": "^29.0.2", | ||
"@types/jest": "^29.2.0", | ||
"@types/sha.js": "^2.4.0", | ||
"@typescript-eslint/eslint-plugin": "5.37.0", | ||
"@typescript-eslint/parser": "5.37.0", | ||
"@typescript-eslint/eslint-plugin": "5.40.1", | ||
"@typescript-eslint/parser": "5.40.1", | ||
"babel-core": "7.0.0-bridge.0", | ||
"babel-jest": "29.0.3", | ||
"babel-jest": "29.2.1", | ||
"babel-watch": "^7.0.0", | ||
"cross-env": "^7.0.2", | ||
"eslint": "8.23.1", | ||
"eslint": "8.25.0", | ||
"eslint-config-prettier": "^8.5.0", | ||
@@ -69,15 +69,15 @@ "eslint-plugin-prettier": "^4.0.0", | ||
"eslint-plugin-unused-imports": "2.0.0", | ||
"jest": "^29.0.3", | ||
"jest": "^29.2.1", | ||
"long": "^5.2.0", | ||
"prettier": "^2.7.0", | ||
"regenerator-runtime": "^0.13.7", | ||
"ts-jest": "^29.0.1", | ||
"typescript": "^4.8.3" | ||
"regenerator-runtime": "^0.13.10", | ||
"ts-jest": "^29.0.3", | ||
"typescript": "^4.8.4" | ||
}, | ||
"dependencies": { | ||
"@babel/runtime": "^7.19.0", | ||
"@chain-registry/types": "^0.12.0", | ||
"@babel/runtime": "^7.19.4", | ||
"@chain-registry/types": "^0.13.0", | ||
"sha.js": "^2.4.11" | ||
}, | ||
"gitHead": "1f570daf2ee8e4a86cd7addf97f453a322b2e9b3" | ||
"gitHead": "36c1490330c272c8348ebc147595bd8af848d35d" | ||
} |
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
30338
456
+ Added@chain-registry/types@0.13.1(transitive)
- Removed@chain-registry/types@0.12.0(transitive)
- Removed@cosmjs/crypto@0.24.1(transitive)
- Removed@cosmjs/encoding@0.24.1(transitive)
- Removed@cosmjs/launchpad@0.24.1(transitive)
- Removed@cosmjs/math@0.24.1(transitive)
- Removed@cosmjs/proto-signing@0.24.1(transitive)
- Removed@cosmjs/utils@0.24.1(transitive)
- Removed@ethersproject/address@5.7.0(transitive)
- Removed@ethersproject/bignumber@5.7.0(transitive)
- Removed@ethersproject/bytes@5.7.0(transitive)
- Removed@ethersproject/keccak256@5.7.0(transitive)
- Removed@ethersproject/logger@5.7.0(transitive)
- Removed@ethersproject/rlp@5.7.0(transitive)
- Removed@iov/crypto@2.1.0(transitive)
- Removed@iov/encoding@2.1.0(transitive)
- Removed@iov/utils@2.0.2(transitive)
- Removed@keplr-wallet/cosmos@0.10.24(transitive)
- Removed@keplr-wallet/crypto@0.10.24(transitive)
- Removed@keplr-wallet/proto-types@0.10.24(transitive)
- Removed@keplr-wallet/types@0.10.24(transitive)
- Removed@keplr-wallet/unit@0.10.24(transitive)
- Removed@noble/hashes@1.5.0(transitive)
- Removed@protobufjs/aspromise@1.1.2(transitive)
- Removed@protobufjs/base64@1.1.2(transitive)
- Removed@protobufjs/codegen@2.0.4(transitive)
- Removed@protobufjs/eventemitter@1.1.0(transitive)
- Removed@protobufjs/fetch@1.1.0(transitive)
- Removed@protobufjs/float@1.0.2(transitive)
- Removed@protobufjs/inquire@1.1.0(transitive)
- Removed@protobufjs/path@1.1.2(transitive)
- Removed@protobufjs/pool@1.1.0(transitive)
- Removed@protobufjs/utf8@1.1.0(transitive)
- Removed@types/long@4.0.2(transitive)
- Removed@types/node@10.12.1813.13.52(transitive)
- Removedasynckit@0.4.0(transitive)
- Removedaxios@0.21.10.21.40.27.2(transitive)
- Removedbase-x@3.0.10(transitive)
- Removedbase64-js@1.5.1(transitive)
- Removedbech32@1.1.4(transitive)
- Removedbig-integer@1.6.52(transitive)
- Removedbindings@1.5.0(transitive)
- Removedbip32@2.0.6(transitive)
- Removedbip39@3.1.0(transitive)
- Removedbn.js@4.12.05.2.1(transitive)
- Removedbrorand@1.1.0(transitive)
- Removedbs58@4.0.1(transitive)
- Removedbs58check@2.1.2(transitive)
- Removedbuffer@5.4.36.0.3(transitive)
- Removedcharenc@0.0.2(transitive)
- Removedcipher-base@1.0.4(transitive)
- Removedcombined-stream@1.0.8(transitive)
- Removedcreate-hash@1.2.0(transitive)
- Removedcreate-hmac@1.1.7(transitive)
- Removedcrypt@0.0.2(transitive)
- Removedcrypto-js@4.2.0(transitive)
- Removedcurve25519-js@0.0.4(transitive)
- Removeddelayed-stream@1.0.0(transitive)
- Removedelliptic@6.5.7(transitive)
- Removedfast-deep-equal@3.1.13.1.3(transitive)
- Removedfile-uri-to-path@1.0.0(transitive)
- Removedfollow-redirects@1.15.9(transitive)
- Removedform-data@4.0.1(transitive)
- Removedhash-base@3.1.0(transitive)
- Removedhash.js@1.1.7(transitive)
- Removedhmac-drbg@1.0.1(transitive)
- Removedieee754@1.2.1(transitive)
- Removedis-buffer@1.1.6(transitive)
- Removedjs-crypto-env@0.3.2(transitive)
- Removedjs-crypto-hash@0.6.3(transitive)
- Removedjs-crypto-hkdf@0.7.3(transitive)
- Removedjs-crypto-hmac@0.6.3(transitive)
- Removedjs-crypto-random@0.4.3(transitive)
- Removedjs-encoding-utils@0.5.6(transitive)
- Removedjs-sha3@0.8.0(transitive)
- Removedlibsodium@0.7.15(transitive)
- Removedlibsodium-wrappers@0.7.15(transitive)
- Removedlong@4.0.0(transitive)
- Removedmd5@2.2.1(transitive)
- Removedmd5.js@1.3.5(transitive)
- Removedmime-db@1.52.0(transitive)
- Removedmime-types@2.1.35(transitive)
- Removedminimalistic-assert@1.0.1(transitive)
- Removedminimalistic-crypto-utils@1.0.1(transitive)
- Removedmiscreant@0.3.2(transitive)
- Removednan@2.22.0(transitive)
- Removedpako@1.0.11(transitive)
- Removedpbkdf2@3.1.2(transitive)
- Removedprotobufjs@6.10.36.11.36.11.4(transitive)
- Removedreadable-stream@3.6.2(transitive)
- Removedreadonly-date@1.0.0(transitive)
- Removedripemd160@2.0.2(transitive)
- Removedsecretjs@0.17.8(transitive)
- Removedsecure-random@1.1.2(transitive)
- Removedsha3@2.1.4(transitive)
- Removedstring_decoder@1.3.0(transitive)
- Removedtiny-secp256k1@1.1.6(transitive)
- Removedtype-tagger@1.0.0(transitive)
- Removedtypeforce@1.18.0(transitive)
- Removedunorm@1.6.0(transitive)
- Removedutil-deprecate@1.0.2(transitive)
- Removedutility-types@3.11.0(transitive)
- Removedwif@2.0.6(transitive)
Updated@babel/runtime@^7.19.4