UNPKG

@xspswap/smart-order-router

Version:
109 lines 8.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.nativeOnChain = exports.ExtendedEther = exports.ID_TO_PROVIDER = exports.CHAIN_IDS_LIST = exports.ID_TO_NETWORK_NAME = exports.NATIVE_CURRENCY = exports.NATIVE_NAMES_BY_ID = exports.NativeCurrencyName = exports.ChainName = exports.ID_TO_CHAIN_ID = exports.V2_SUPPORTED = void 0; const sdk_core_1 = require("@x-swap-protocol/sdk-core"); exports.V2_SUPPORTED = [sdk_core_1.ChainId.APOTHEM, sdk_core_1.ChainId.XDC]; const ID_TO_CHAIN_ID = (id) => { switch (id) { case 50: return sdk_core_1.ChainId.XDC; case 51: return sdk_core_1.ChainId.APOTHEM; default: throw new Error(`Unknown chain id: ${id}`); } }; exports.ID_TO_CHAIN_ID = ID_TO_CHAIN_ID; var ChainName; (function (ChainName) { ChainName["XDC"] = "xdc-mainnet"; ChainName["APOTHEM"] = "xdc-apothem"; })(ChainName = exports.ChainName || (exports.ChainName = {})); var NativeCurrencyName; (function (NativeCurrencyName) { // Strings match input for CLI NativeCurrencyName["XDC"] = "XDC"; })(NativeCurrencyName = exports.NativeCurrencyName || (exports.NativeCurrencyName = {})); exports.NATIVE_NAMES_BY_ID = { [sdk_core_1.ChainId.XDC]: ['XDC', 'XDC', '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee'], [sdk_core_1.ChainId.APOTHEM]: [ 'XDC', 'XDC', '0x0000000000000000000000000000000000001010', ], }; exports.NATIVE_CURRENCY = { [sdk_core_1.ChainId.XDC]: NativeCurrencyName.XDC, [sdk_core_1.ChainId.APOTHEM]: NativeCurrencyName.XDC, }; const ID_TO_NETWORK_NAME = (id) => { switch (id) { case 50: return ChainName.XDC; case 51: return ChainName.APOTHEM; default: throw new Error(`Unknown chain id: ${id}`); } }; exports.ID_TO_NETWORK_NAME = ID_TO_NETWORK_NAME; exports.CHAIN_IDS_LIST = Object.values(sdk_core_1.ChainId).map((c) => c.toString()); const ID_TO_PROVIDER = (id) => { var _a; switch (id) { case sdk_core_1.ChainId.XDC: return (_a = process.env.RPC_URL) !== null && _a !== void 0 ? _a : ''; case sdk_core_1.ChainId.APOTHEM: return 'https://erpc.apothem.network'; default: throw new Error(`Chain id: ${id} not supported`); } }; exports.ID_TO_PROVIDER = ID_TO_PROVIDER; function isXdc(chainId) { return chainId === sdk_core_1.ChainId.APOTHEM || chainId === sdk_core_1.ChainId.XDC; } class XDCNativeCurrency extends sdk_core_1.NativeCurrency { equals(other) { return other.isNative && other.chainId === this.chainId; } get wrapped() { if (!isXdc(this.chainId)) throw new Error('Not XDC'); const nativeCurrency = sdk_core_1.WETH9[this.chainId]; if (nativeCurrency) { return nativeCurrency; } throw new Error(`Does not support this chain ${this.chainId}`); } constructor(chainId) { if (!isXdc(chainId)) throw new Error('Not XDC'); super(chainId, 18, 'XDC', 'XinFin'); } } class ExtendedEther extends sdk_core_1.Ether { get wrapped() { if (this.chainId in sdk_core_1.WETH9) return sdk_core_1.WETH9[this.chainId]; throw new Error('Unsupported chain ID'); } static onChain(chainId) { var _a; return ((_a = this._cachedExtendedEther[chainId]) !== null && _a !== void 0 ? _a : (this._cachedExtendedEther[chainId] = new ExtendedEther(chainId))); } } exports.ExtendedEther = ExtendedEther; ExtendedEther._cachedExtendedEther = {}; const cachedNativeCurrency = {}; function nativeOnChain(chainId) { if (cachedNativeCurrency[chainId] != undefined) return cachedNativeCurrency[chainId]; else if (isXdc(chainId)) cachedNativeCurrency[chainId] = new XDCNativeCurrency(chainId); else cachedNativeCurrency[chainId] = ExtendedEther.onChain(chainId); return cachedNativeCurrency[chainId]; } exports.nativeOnChain = nativeOnChain; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhaW5zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWwvY2hhaW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHdEQU9tQztBQUV0QixRQUFBLFlBQVksR0FBRyxDQUFDLGtCQUFPLENBQUMsT0FBTyxFQUFFLGtCQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7QUFFcEQsTUFBTSxjQUFjLEdBQUcsQ0FBQyxFQUFVLEVBQVcsRUFBRTtJQUNwRCxRQUFRLEVBQUUsRUFBRTtRQUNWLEtBQUssRUFBRTtZQUNMLE9BQU8sa0JBQU8sQ0FBQyxHQUFHLENBQUM7UUFDckIsS0FBSyxFQUFFO1lBQ0wsT0FBTyxrQkFBTyxDQUFDLE9BQU8sQ0FBQztRQUN6QjtZQUNFLE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLEVBQUUsRUFBRSxDQUFDLENBQUM7S0FDOUM7QUFDSCxDQUFDLENBQUM7QUFUVyxRQUFBLGNBQWMsa0JBU3pCO0FBRUYsSUFBWSxTQUdYO0FBSEQsV0FBWSxTQUFTO0lBQ25CLGdDQUFtQixDQUFBO0lBQ25CLG9DQUF1QixDQUFBO0FBQ3pCLENBQUMsRUFIVyxTQUFTLEdBQVQsaUJBQVMsS0FBVCxpQkFBUyxRQUdwQjtBQUVELElBQVksa0JBR1g7QUFIRCxXQUFZLGtCQUFrQjtJQUM1Qiw4QkFBOEI7SUFDOUIsaUNBQVcsQ0FBQTtBQUNiLENBQUMsRUFIVyxrQkFBa0IsR0FBbEIsMEJBQWtCLEtBQWxCLDBCQUFrQixRQUc3QjtBQUNZLFFBQUEsa0JBQWtCLEdBQW9DO0lBQ2pFLENBQUMsa0JBQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsNENBQTRDLENBQUM7SUFDM0UsQ0FBQyxrQkFBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ2pCLEtBQUs7UUFDTCxLQUFLO1FBQ0wsNENBQTRDO0tBQzdDO0NBQ0YsQ0FBQztBQUVXLFFBQUEsZUFBZSxHQUE4QztJQUN4RSxD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