From 03e45c1dcbaa2861a86667be950264c3648a6378 Mon Sep 17 00:00:00 2001 From: Rohit Date: Tue, 3 Jun 2025 19:28:18 +0530 Subject: [PATCH] feat: add can create browser route --- server/src/routes/record.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/server/src/routes/record.ts b/server/src/routes/record.ts index 374f837a..8a589811 100644 --- a/server/src/routes/record.ts +++ b/server/src/routes/record.ts @@ -11,6 +11,7 @@ import { getRemoteBrowserCurrentTabs, getActiveBrowserIdByState, destroyRemoteBrowser, + canCreateBrowserInState, } from '../browser-management/controller'; import { chromium } from 'playwright-extra'; import stealthPlugin from 'puppeteer-extra-plugin-stealth'; @@ -181,6 +182,18 @@ router.get('/active', requireSignIn, (req: AuthenticatedRequest, res) => { return res.send(id); }); +/** + * GET endpoint for checking if the user can create a new remote browser. + */ +router.get('/can-create/:state', requireSignIn, (req: AuthenticatedRequest, res) => { + if (!req.user) { + return res.status(401).send('User not authenticated'); + } + const state = req.params.state as "recording" | "run"; + const canCreate = canCreateBrowserInState(req.user.id, state); + return res.json({ canCreate }); +}); + /** * GET endpoint for getting the current url of the active remote browser. */