@koyofinance/core-sdk
Version:
148 lines (138 loc) • 4.94 kB
JavaScript
;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
// src/index.ts
var src_exports = {};
__export(src_exports, {
CHAIN_HEX: () => CHAIN_HEX,
CHAIN_KEY: () => CHAIN_KEY,
ChainHex: () => ChainHex,
ChainId: () => ChainId,
ChainKey: () => ChainKey,
calculatePercentage: () => calculatePercentage,
flattenArray: () => flattenArray,
formatBalance: () => formatBalance,
shortenHex: () => shortenHex,
uniqueArray: () => uniqueArray
});
module.exports = __toCommonJS(src_exports);
// src/enums/ChainHex.ts
var ChainHex;
(function(ChainHex2) {
ChainHex2["ETHEREUM"] = "0x1";
ChainHex2["MOONBEAM"] = "0x504";
ChainHex2["RINKEBY"] = "0x4";
ChainHex2["MOONBASE"] = "0x507";
ChainHex2["BOBA"] = "0x120";
ChainHex2["BOBABEAM"] = "0x50e";
ChainHex2["BOBA_RINKEBY"] = "0x1c";
ChainHex2["BOBABASE"] = "0x511";
})(ChainHex || (ChainHex = {}));
// src/enums/ChainId.ts
var ChainId;
(function(ChainId2) {
ChainId2[ChainId2["ETHEREUM"] = 1] = "ETHEREUM";
ChainId2[ChainId2["MOONBEAM"] = 1284] = "MOONBEAM";
ChainId2[ChainId2["RINKEBY"] = 4] = "RINKEBY";
ChainId2[ChainId2["MOONBASE"] = 1287] = "MOONBASE";
ChainId2[ChainId2["BOBA"] = 288] = "BOBA";
ChainId2[ChainId2["BOBABEAM"] = 1294] = "BOBABEAM";
ChainId2[ChainId2["BOBA_RINKEBY"] = 28] = "BOBA_RINKEBY";
ChainId2[ChainId2["BOBABASE"] = 1297] = "BOBABASE";
})(ChainId || (ChainId = {}));
// src/enums/ChainKey.ts
var ChainKey;
(function(ChainKey2) {
ChainKey2["ETHEREUM"] = "ethereum";
ChainKey2["MOONBEAM"] = "moonbeam";
ChainKey2["RINKEBY"] = "rinkeby";
ChainKey2["MOONBASE"] = "moonbase";
ChainKey2["BOBA"] = "boba";
ChainKey2["BOBABEAM"] = "bobabeam";
ChainKey2["BOBA_RINKEBY"] = "boba-rinkeby";
ChainKey2["BOBABASE"] = "bobabase";
})(ChainKey || (ChainKey = {}));
// src/constants/chain.ts
var CHAIN_KEY = {
[ChainId.ETHEREUM]: ChainKey.ETHEREUM,
[ChainId.MOONBEAM]: ChainKey.MOONBEAM,
[ChainId.RINKEBY]: ChainKey.RINKEBY,
[ChainId.MOONBASE]: ChainKey.MOONBASE,
[ChainId.BOBA]: ChainKey.BOBA,
[ChainId.BOBABEAM]: ChainKey.BOBABEAM,
[ChainId.BOBA_RINKEBY]: ChainKey.BOBA_RINKEBY,
[ChainId.BOBABASE]: ChainKey.BOBABASE
};
var CHAIN_HEX = {
[ChainId.ETHEREUM]: ChainHex.ETHEREUM,
[ChainId.MOONBEAM]: ChainHex.MOONBEAM,
[ChainId.RINKEBY]: ChainHex.RINKEBY,
[ChainId.MOONBASE]: ChainHex.MOONBASE,
[ChainId.BOBA]: ChainHex.BOBA,
[ChainId.BOBABEAM]: ChainHex.BOBABEAM,
[ChainId.BOBA_RINKEBY]: ChainHex.BOBA_RINKEBY,
[ChainId.BOBABASE]: ChainHex.BOBABASE
};
// src/functions/calculatePercentage.ts
var import_utils = require("ethers/lib/utils");
function calculatePercentage(full, part, defaultValue = 0, decimalsFull = 18, decimalsPart = decimalsFull) {
const fullNumber = Number((0, import_utils.formatUnits)(full, decimalsFull));
const partNumber = Number((0, import_utils.formatUnits)(part, decimalsPart));
const result = 100 * partNumber / fullNumber;
return Number.isNaN(result) ? defaultValue : result;
}
__name(calculatePercentage, "calculatePercentage");
// src/functions/flattenArray.ts
function flattenArray(arrays) {
return new Array().concat(...arrays);
}
__name(flattenArray, "flattenArray");
// src/functions/formatBalance.ts
var import_utils2 = require("ethers/lib/utils");
function formatBalance(val, options = {
maximumFractionDigits: 5,
minimumFractionDigits: 2
}, decimals = 18) {
return Number((0, import_utils2.formatUnits)(val, decimals)).toLocaleString("fullwide", options);
}
__name(formatBalance, "formatBalance");
// src/functions/shortenHex.ts
function shortenHex(hex, length = 4) {
return `${hex.substring(0, length + 2)}\u2026${hex.substring(hex.length - length)}`;
}
__name(shortenHex, "shortenHex");
// src/functions/uniqueArray.ts
function uniqueArray(array) {
return Array.from(new Set(array).values());
}
__name(uniqueArray, "uniqueArray");
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
CHAIN_HEX,
CHAIN_KEY,
ChainHex,
ChainId,
ChainKey,
calculatePercentage,
flattenArray,
formatBalance,
shortenHex,
uniqueArray
});
//# sourceMappingURL=index.js.map