diff --git a/packages/hoppscotch-common/src/components/collections/Collection.vue b/packages/hoppscotch-common/src/components/collections/Collection.vue index 41600319..8a7364d6 100644 --- a/packages/hoppscotch-common/src/components/collections/Collection.vue +++ b/packages/hoppscotch-common/src/components/collections/Collection.vue @@ -82,7 +82,6 @@ @click="emit('add-folder')" /> { - if (!props.data) return true - - if (props.collectionsType === "my-collections") { - const collection = props.data as HoppCollection - const req = collection.requests.length - const fol = collection.folders.length - - return req === 0 && fol === 0 - } - - const teamCollection = props.data as TeamCollection - const req = teamCollection.requests?.length ?? 0 - const child = teamCollection.children?.length ?? 0 - - return req === 0 && child === 0 -}) - /** * Determines if the collection/folder is sortable. * A collection/folder is sortable if it has more than one request or more than one child folder. diff --git a/packages/hoppscotch-common/src/helpers/RequestRunner.ts b/packages/hoppscotch-common/src/helpers/RequestRunner.ts index da914d1d..9c06f737 100644 --- a/packages/hoppscotch-common/src/helpers/RequestRunner.ts +++ b/packages/hoppscotch-common/src/helpers/RequestRunner.ts @@ -397,8 +397,30 @@ export function runRESTRequest$( const cookieJarEntries = getCookieJarEntries() + const { request, inheritedProperties } = tab.value.document + + const requestAuth = + request.auth.authType === "inherit" && request.auth.authActive + ? inheritedProperties?.auth.inheritedAuth + : request.auth + + const inheritedHeaders = inheritedProperties?.headers + ?.filter((header) => header.inheritedHeader) + .map((header) => header.inheritedHeader!) + + const requestHeaders: HoppRESTHeaders = [ + ...(inheritedHeaders ?? []), + ...request.headers, + ] + + const resolvedRequest = { + ...tab.value.document.request, + auth: requestAuth ?? { authType: "none", authActive: false }, + headers: requestHeaders, + } + const res = delegatePreRequestScriptRunner( - tab.value.document.request, + resolvedRequest, getCombinedEnvVariables(), cookieJarEntries ).then(async (preRequestScriptResult) => { @@ -409,31 +431,6 @@ export function runRESTRequest$( return E.left("script_fail" as const) } - const requestAuth = - tab.value.document.request.auth.authType === "inherit" && - tab.value.document.request.auth.authActive - ? tab.value.document.inheritedProperties?.auth.inheritedAuth - : tab.value.document.request.auth - - let requestHeaders - - const inheritedHeaders = - tab.value.document.inheritedProperties?.headers.map((header) => { - if (header.inheritedHeader) { - return header.inheritedHeader - } - return [] - }) - - if (inheritedHeaders) { - requestHeaders = [ - ...inheritedHeaders, - ...tab.value.document.request.headers, - ] - } else { - requestHeaders = [...tab.value.document.request.headers] - } - const finalRequestVariables = tab.value.document.request.requestVariables.map( (v: HoppRESTRequestVariable) => { @@ -460,9 +457,7 @@ export function runRESTRequest$( })) const finalRequest = { - ...tab.value.document.request, - auth: requestAuth ?? { authType: "none", authActive: false }, - headers: requestHeaders as HoppRESTHeaders, + ...resolvedRequest, ...(preRequestScriptResult.right.updatedRequest ?? {}), }