@unstoppabledomains/resolution
Version:
Domain Resolution for blockchain domains
31 lines (30 loc) • 1.38 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.OldResolverAddresses = void 0;
var resolutionError_1 = require("../../errors/resolutionError");
var newResolver_1 = __importDefault(require("./newResolver"));
var oldResolver_1 = __importDefault(require("./oldResolver"));
var types_1 = require("../../types");
var publicTypes_1 = require("../../types/publicTypes");
exports.OldResolverAddresses = [
'0x5ffc014343cd971b7eb70732021e26c35b744cc4',
'0x1da022710df5002339274aadee8d58218e9d6ab5',
'0xda1756bb923af5d1a05e277cb1e54f1d0a127890',
];
exports.default = (function (addr, coinType) {
if (coinType === undefined || coinType === types_1.EthCoinIndex) {
// Old interface is only compatible to output the ETH address
// New interface is compatible to that API
// So we prefer old interface when currency is ETH
return oldResolver_1.default;
}
else {
if (exports.OldResolverAddresses.includes(addr.toLowerCase())) {
throw new resolutionError_1.ResolutionError(resolutionError_1.ResolutionErrorCode.IncorrectResolverInterface, { method: publicTypes_1.NamingServiceName.ENS });
}
return newResolver_1.default;
}
});