From 69e3b0a8a0ee90e46aab028809c64f948e7526c2 Mon Sep 17 00:00:00 2001 From: Shaunak Das <51281688+shaun-ak@users.noreply.github.com> Date: Mon, 2 Sep 2024 12:46:10 +0530 Subject: [PATCH] execute scraper instantly --- .../api/src/services/data-provider/manual/manual.service.ts | 6 +++++- .../src/lib/interfaces/scraper-configuration.interface.ts | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/api/src/services/data-provider/manual/manual.service.ts b/apps/api/src/services/data-provider/manual/manual.service.ts index 0655d2318..c3cd06da3 100644 --- a/apps/api/src/services/data-provider/manual/manual.service.ts +++ b/apps/api/src/services/data-provider/manual/manual.service.ts @@ -166,12 +166,16 @@ export class ManualService implements DataProviderInterface { } }); - for (const { currency, symbol } of symbolProfiles) { + for (const { currency, symbol, scraperConfiguration } of symbolProfiles) { let marketPrice = marketData.find((marketDataItem) => { return marketDataItem.symbol === symbol; })?.marketPrice ?? 0; + if (scraperConfiguration.mode === 'instant') { + marketPrice = await this.scrape(scraperConfiguration); + } + response[symbol] = { currency, marketPrice, diff --git a/libs/common/src/lib/interfaces/scraper-configuration.interface.ts b/libs/common/src/lib/interfaces/scraper-configuration.interface.ts index ef5506328..33fef2405 100644 --- a/libs/common/src/lib/interfaces/scraper-configuration.interface.ts +++ b/libs/common/src/lib/interfaces/scraper-configuration.interface.ts @@ -4,4 +4,5 @@ export interface ScraperConfiguration { locale?: string; selector: string; url: string; + mode?: 'instant' | 'lazy'; }