UNPKG

web3x

Version:

Typescript port of web3.js

45 lines (42 loc) 3.28 kB
"use strict"; /* This file is part of web3x. web3x is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. web3x is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with web3x. If not, see <http://www.gnu.org/licenses/>. */ Object.defineProperty(exports, "__esModule", { value: true }); const formatters_1 = require("../../formatters"); const subscriptions_1 = require("../../subscriptions"); function subscribeForLogs(eth, logRequest = {}) { const { fromBlock, ...subscriptionLogRequest } = logRequest; const params = [formatters_1.toRawLogRequest(subscriptionLogRequest)]; const subscription = new subscriptions_1.Subscription('eth', 'logs', params, eth.provider, (result, sub) => { const output = formatters_1.fromRawLogResponse(result); sub.emit(output.removed ? 'changed' : 'data', output, sub); }, false); if (fromBlock !== undefined) { eth .getPastLogs(logRequest) .then(logs => { logs.forEach(log => subscription.emit('data', log, subscription)); subscription.subscribe(); }) .catch(err => { subscription.emit('error', err, subscription); }); } else { subscription.subscribe(); } return subscription; } exports.subscribeForLogs = subscribeForLogs; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ldGgvc3Vic2NyaXB0aW9ucy9sb2dzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7Ozs7Ozs7O0VBZUU7O0FBR0YsaURBQWdIO0FBQ2hILHVEQUFtRDtBQUVuRCxTQUFnQixnQkFBZ0IsQ0FBQyxHQUFRLEVBQUUsYUFBeUIsRUFBRTtJQUNwRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsc0JBQXNCLEVBQUUsR0FBRyxVQUFVLENBQUM7SUFDNUQsTUFBTSxNQUFNLEdBQUcsQ0FBQyw0QkFBZSxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQztJQUV6RCxNQUFNLFlBQVksR0FBRyxJQUFJLDRCQUFZLENBQ25DLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNOLEdBQUcsQ0FBQyxRQUFRLEVBQ1osQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLEVBQUU7UUFDZCxNQUFNLE1BQU0sR0FBRywrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztJQUM3RCxDQUFDLEVBQ0QsS0FBSyxDQUNOLENBQUM7SUFFRixJQUFJLFNBQVMsS0FBSyxTQUFTLEVBQUU7UUFDM0IsR0FBRzthQUNBLFdBQVcsQ0FBQyxVQUFVLENBQUM7YUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ1gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO1lBQ2xFLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUMzQixDQUFDLENBQUM7YUFDRCxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDWCxZQUFZLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDaEQsQ0FBQyxDQUFDLENBQUM7S0FDTjtTQUFNO1FBQ0wsWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFDO0tBQzFCO0lBRUQsT0FBTyxZQUFZLENBQUM7QUFDdEIsQ0FBQztBQS9CRCw0Q0ErQkMifQ==