From 558acffb331609482d81688e29f808ea8a358f8e Mon Sep 17 00:00:00 2001 From: Nicolas Date: Mon, 26 Aug 2024 19:07:14 -0300 Subject: [PATCH] Nick: @rafaelsideguide isarray for includes/excludes --- apps/api/src/controllers/v1/crawl.ts | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/apps/api/src/controllers/v1/crawl.ts b/apps/api/src/controllers/v1/crawl.ts index 9d8b4c6f..69e47a0b 100644 --- a/apps/api/src/controllers/v1/crawl.ts +++ b/apps/api/src/controllers/v1/crawl.ts @@ -34,10 +34,30 @@ export async function crawlController( const { remainingCredits } = req.account; - // TODO: Get rid of crawlerOptions const crawlerOptions = legacyCrawlerOptions(req.body); const pageOptions = legacyScrapeOptions(req.body.scrapeOptions); + // TODO: @rafa, is this right? copied from v0 + if (Array.isArray(crawlerOptions.includes)) { + for (const x of crawlerOptions.includes) { + try { + new RegExp(x); + } catch (e) { + return res.status(400).json({ success: false, error: e.message }); + } + } + } + + if (Array.isArray(crawlerOptions.excludes)) { + for (const x of crawlerOptions.excludes) { + try { + new RegExp(x); + } catch (e) { + return res.status(400).json({ success: false, error: e.message }); + } + } + } + crawlerOptions.limit = Math.min(remainingCredits, crawlerOptions.limit); const sc: StoredCrawl = {