diff --git a/packages/bruno-app/src/components/Sidebar/Collections/Collection/CollectionItem/GenerateCodeItem/utils/auth-utils.js b/packages/bruno-app/src/components/Sidebar/Collections/Collection/CollectionItem/GenerateCodeItem/utils/auth-utils.js index 25a392e8c..6236ae72b 100644 --- a/packages/bruno-app/src/components/Sidebar/Collections/Collection/CollectionItem/GenerateCodeItem/utils/auth-utils.js +++ b/packages/bruno-app/src/components/Sidebar/Collections/Collection/CollectionItem/GenerateCodeItem/utils/auth-utils.js @@ -16,12 +16,16 @@ export const getTreePathFromCollectionToItem = (collection, _itemUid) => { // Resolve inherited auth by traversing up the folder hierarchy export const resolveInheritedAuth = (item, collection) => { - const request = item.draft?.request || item.request; - const authMode = request?.auth?.mode; + const mergedRequest = { + ...(item.request || {}), + ...(item.draft?.request || {}) + }; - // If auth is not inherit or no auth defined, return the request as is + const authMode = mergedRequest.auth.mode; + + // If auth is not inherit or no auth defined, return the merged request as is if (!authMode || authMode !== 'inherit') { - return request; + return mergedRequest; } // Get the tree path from collection to item @@ -43,7 +47,7 @@ export const resolveInheritedAuth = (item, collection) => { } return { - ...request, + ...mergedRequest, auth: effectiveAuth }; }; \ No newline at end of file diff --git a/packages/bruno-app/src/components/Sidebar/Collections/Collection/CollectionItem/GenerateCodeItem/utils/snippet-generator.js b/packages/bruno-app/src/components/Sidebar/Collections/Collection/CollectionItem/GenerateCodeItem/utils/snippet-generator.js index 6be76f170..73e03fde6 100644 --- a/packages/bruno-app/src/components/Sidebar/Collections/Collection/CollectionItem/GenerateCodeItem/utils/snippet-generator.js +++ b/packages/bruno-app/src/components/Sidebar/Collections/Collection/CollectionItem/GenerateCodeItem/utils/snippet-generator.js @@ -2,7 +2,6 @@ import { buildHarRequest } from 'utils/codegenerator/har'; import { getAuthHeaders } from 'utils/codegenerator/auth'; import { getAllVariables } from 'utils/collections/index'; import { interpolateHeaders, interpolateBody, createVariablesObject } from './interpolation'; -import { resolveInheritedAuth } from './auth-utils'; const generateSnippet = ({ language, item, collection, shouldInterpolate = false }) => { try { @@ -21,15 +20,14 @@ const generateSnippet = ({ language, item, collection, shouldInterpolate = false processEnvVars: collection.processEnvVariables || {} }); - // Get the request with resolved auth - const request = resolveInheritedAuth(item, collection); + const request = item.request; // Prepare headers let headers = [...(request.headers || [])]; // Add auth headers if needed if (request.auth && request.auth.mode !== 'none') { - const authHeaders = getAuthHeaders(request.auth, variables); + const authHeaders = getAuthHeaders(collection.root.request.auth, request.auth); headers = [...headers, ...authHeaders]; }