UNPKG

@airgap/coinlib-core

Version:

The @airgap/coinlib-core is a protocol agnostic library to prepare, sign and broadcast cryptocurrency transactions.

29 lines 1.57 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.RemoteDataFactory = void 0; var HttpRemoteData_1 = require("./HttpRemoteData"); var IpfsRemoteData_1 = require("./IpfsRemoteData"); var Sha256RemoteData_1 = require("./Sha256RemoteData"); var RemoteDataFactory = /** @class */ (function () { function RemoteDataFactory(extraFactoriesWithValidators) { var _a; if (extraFactoriesWithValidators === void 0) { extraFactoriesWithValidators = []; } this.factoriesWithValidators = [ [HttpRemoteData_1.HttpRemoteData.validate, function (uri, _extra) { return HttpRemoteData_1.HttpRemoteData.from(uri); }], [IpfsRemoteData_1.IpfsRemoteData.validate, function (uri, _extra) { return IpfsRemoteData_1.IpfsRemoteData.from(uri); }], [Sha256RemoteData_1.Sha256RemoteData.validate, function (uri, _extra) { return Sha256RemoteData_1.Sha256RemoteData.from(uri); }] ]; (_a = this.factoriesWithValidators).push.apply(_a, extraFactoriesWithValidators); } RemoteDataFactory.prototype.create = function (uri, extra) { var _a; var _b = (_a = this.factoriesWithValidators.find(function (_a) { var validator = _a[0], _ = _a[1]; return validator(uri); })) !== null && _a !== void 0 ? _a : [undefined, undefined], factory = _b[1]; return factory ? factory(uri, extra) : undefined; }; return RemoteDataFactory; }()); exports.RemoteDataFactory = RemoteDataFactory; //# sourceMappingURL=RemoteDataFactory.js.map