UNPKG

dune-ts

Version:

Unofficial Dune Analytics Typescript Client

14 lines 2.17 kB
import { MAX_AGE } from '../constants'; import { isAfter } from '../utils'; export const maybeLogin = () => { return function (target, propertyKey, descriptor) { const originalMethod = descriptor.value; descriptor.value = async function (...args) { const loggedAt = this['loggedAt']; if (loggedAt === undefined || isAfter(loggedAt, MAX_AGE)) await this.login(); return originalMethod.apply(this, args); }; }; }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yLUR1bmUuanMiLCJzb3VyY2VSb290Ijoic3JjLyIsInNvdXJjZXMiOlsiZGVjb3JhdG9ycy9mb3ItRHVuZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXRDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFbEMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLEdBQUcsRUFBRTtJQUM3QixPQUFPLFVBQ0wsTUFBYyxFQUNkLFdBQW1CLEVBQ25CLFVBQThCO1FBRTlCLE1BQU0sY0FBYyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUE7UUFFdkMsVUFBVSxDQUFDLEtBQUssR0FBRyxLQUFLLFdBQVcsR0FBRyxJQUFhO1lBQ2pELE1BQU0sUUFBUSxHQUFJLElBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQTtZQUUzQyxJQUFJLFFBQVEsS0FBSyxTQUFTLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUM7Z0JBQ3RELE1BQU8sSUFBYSxDQUFDLEtBQUssRUFBRSxDQUFBO1lBRTlCLE9BQU8sY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDekMsQ0FBQyxDQUFBO0lBQ0gsQ0FBQyxDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTUFYX0FHRSB9IGZyb20gJy4uL2NvbnN0YW50cydcbmltcG9ydCB7IER1bmUgfSBmcm9tICcuLi9EdW5lJ1xuaW1wb3J0IHsgaXNBZnRlciB9IGZyb20gJy4uL3V0aWxzJ1xuXG5leHBvcnQgY29uc3QgbWF5YmVMb2dpbiA9ICgpID0+IHtcbiAgcmV0dXJuIGZ1bmN0aW9uIChcbiAgICB0YXJnZXQ6IG9iamVjdCxcbiAgICBwcm9wZXJ0eUtleTogc3RyaW5nLFxuICAgIGRlc2NyaXB0b3I6IFByb3BlcnR5RGVzY3JpcHRvcixcbiAgKSB7XG4gICAgY29uc3Qgb3JpZ2luYWxNZXRob2QgPSBkZXNjcmlwdG9yLnZhbHVlXG5cbiAgICBkZXNjcmlwdG9yLnZhbHVlID0gYXN5bmMgZnVuY3Rpb24gKC4uLmFyZ3M6IG5ldmVyW10pIHtcbiAgICAgIGNvbnN0IGxvZ2dlZEF0ID0gKHRoaXMgYXMgRHVuZSlbJ2xvZ2dlZEF0J11cblxuICAgICAgaWYgKGxvZ2dlZEF0ID09PSB1bmRlZmluZWQgfHwgaXNBZnRlcihsb2dnZWRBdCwgTUFYX0FHRSkpXG4gICAgICAgIGF3YWl0ICh0aGlzIGFzIER1bmUpLmxvZ2luKClcblxuICAgICAgcmV0dXJuIG9yaWdpbmFsTWV0aG9kLmFwcGx5KHRoaXMsIGFyZ3MpXG4gICAgfVxuICB9XG59XG4iXX0=