From ce01c693955843d9289f22a7f0ff206fdb7bc4a5 Mon Sep 17 00:00:00 2001 From: Pragadesh-45 <54320162+Pragadesh-45@users.noreply.github.com> Date: Wed, 4 Feb 2026 15:54:43 +0530 Subject: [PATCH] feat: Red status indicator for script errors in Request, Collection, and Folder Script tabs (#7035) --- .../components/CollectionSettings/Script/index.js | 13 +++++++++++-- .../src/components/FolderSettings/Script/index.js | 13 +++++++++++-- .../src/components/RequestPane/Script/index.js | 8 ++++++-- 3 files changed, 28 insertions(+), 6 deletions(-) diff --git a/packages/bruno-app/src/components/CollectionSettings/Script/index.js b/packages/bruno-app/src/components/CollectionSettings/Script/index.js index a45375183..626afd1d5 100644 --- a/packages/bruno-app/src/components/CollectionSettings/Script/index.js +++ b/packages/bruno-app/src/components/CollectionSettings/Script/index.js @@ -7,6 +7,7 @@ import { saveCollectionSettings } from 'providers/ReduxStore/slices/collections/ import { useTheme } from 'providers/Theme'; import { Tabs, TabsList, TabsTrigger, TabsContent } from 'components/Tabs'; import StatusDot from 'components/StatusDot'; +import { flattenItems, isItemARequest } from 'utils/collections'; import StyledWrapper from './StyledWrapper'; import Button from 'ui/Button'; @@ -73,6 +74,10 @@ const Script = ({ collection }) => { dispatch(saveCollectionSettings(collection.uid)); }; + const items = flattenItems(collection.items || []); + const hasPreRequestScriptError = items.some((i) => isItemARequest(i) && i.preRequestScriptErrorMessage); + const hasPostResponseScriptError = items.some((i) => isItemARequest(i) && i.postResponseScriptErrorMessage); + return (
@@ -83,11 +88,15 @@ const Script = ({ collection }) => { Pre Request - {requestScript && requestScript.trim().length > 0 && } + {requestScript && requestScript.trim().length > 0 && ( + + )} Post Response - {responseScript && responseScript.trim().length > 0 && } + {responseScript && responseScript.trim().length > 0 && ( + + )} diff --git a/packages/bruno-app/src/components/FolderSettings/Script/index.js b/packages/bruno-app/src/components/FolderSettings/Script/index.js index 4bcddd199..48b282dbe 100644 --- a/packages/bruno-app/src/components/FolderSettings/Script/index.js +++ b/packages/bruno-app/src/components/FolderSettings/Script/index.js @@ -7,6 +7,7 @@ import { saveFolderRoot } from 'providers/ReduxStore/slices/collections/actions' import { useTheme } from 'providers/Theme'; import { Tabs, TabsList, TabsTrigger, TabsContent } from 'components/Tabs'; import StatusDot from 'components/StatusDot'; +import { flattenItems, isItemARequest } from 'utils/collections'; import StyledWrapper from './StyledWrapper'; import Button from 'ui/Button'; @@ -75,6 +76,10 @@ const Script = ({ collection, folder }) => { dispatch(saveFolderRoot(collection.uid, folder.uid)); }; + const items = flattenItems(folder.items || []); + const hasPreRequestScriptError = items.some((i) => isItemARequest(i) && i.preRequestScriptErrorMessage); + const hasPostResponseScriptError = items.some((i) => isItemARequest(i) && i.postResponseScriptErrorMessage); + return (
@@ -85,11 +90,15 @@ const Script = ({ collection, folder }) => { Pre Request - {requestScript && requestScript.trim().length > 0 && } + {requestScript && requestScript.trim().length > 0 && ( + + )} Post Response - {responseScript && responseScript.trim().length > 0 && } + {responseScript && responseScript.trim().length > 0 && ( + + )} diff --git a/packages/bruno-app/src/components/RequestPane/Script/index.js b/packages/bruno-app/src/components/RequestPane/Script/index.js index 1d49f394f..96c6097ce 100644 --- a/packages/bruno-app/src/components/RequestPane/Script/index.js +++ b/packages/bruno-app/src/components/RequestPane/Script/index.js @@ -82,11 +82,15 @@ const Script = ({ item, collection }) => { Pre Request - {hasPreRequestScript && } + {hasPreRequestScript && ( + + )} Post Response - {hasPostResponseScript && } + {hasPostResponseScript && ( + + )}