fix: global variables not applying on codegen

This commit is contained in:
Andrew Bastin
2021-08-21 20:08:32 +05:30
parent 732dc07ec5
commit 883c787c0b

View File

@@ -2,7 +2,7 @@ import { combineLatest, Observable } from "rxjs"
import { map } from "rxjs/operators" import { map } from "rxjs/operators"
import { FormDataKeyValue, HoppRESTRequest } from "../types/HoppRESTRequest" import { FormDataKeyValue, HoppRESTRequest } from "../types/HoppRESTRequest"
import parseTemplateString from "../templating" import parseTemplateString from "../templating"
import { Environment } from "~/newstore/environments" import { Environment, getGlobalVariables } from "~/newstore/environments"
export interface EffectiveHoppRESTRequest extends HoppRESTRequest { export interface EffectiveHoppRESTRequest extends HoppRESTRequest {
/** /**
@@ -57,6 +57,8 @@ export function getEffectiveRESTRequest(
request: HoppRESTRequest, request: HoppRESTRequest,
environment: Environment environment: Environment
): EffectiveHoppRESTRequest { ): EffectiveHoppRESTRequest {
const envVariables = [...environment.variables, ...getGlobalVariables()]
const effectiveFinalHeaders = request.headers const effectiveFinalHeaders = request.headers
.filter( .filter(
(x) => (x) =>
@@ -66,8 +68,8 @@ export function getEffectiveRESTRequest(
.map((x) => ({ .map((x) => ({
// Parse out environment template strings // Parse out environment template strings
active: true, active: true,
key: parseTemplateString(x.key, environment.variables), key: parseTemplateString(x.key, envVariables),
value: parseTemplateString(x.value, environment.variables), value: parseTemplateString(x.value, envVariables),
})) }))
// Authentication // Authentication
@@ -99,10 +101,7 @@ export function getEffectiveRESTRequest(
return { return {
...request, ...request,
effectiveFinalURL: parseTemplateString( effectiveFinalURL: parseTemplateString(request.endpoint, envVariables),
request.endpoint,
environment.variables
),
effectiveFinalHeaders, effectiveFinalHeaders,
effectiveFinalParams: request.params effectiveFinalParams: request.params
.filter( .filter(
@@ -112,8 +111,8 @@ export function getEffectiveRESTRequest(
) )
.map((x) => ({ .map((x) => ({
active: true, active: true,
key: parseTemplateString(x.key, environment.variables), key: parseTemplateString(x.key, envVariables),
value: parseTemplateString(x.value, environment.variables), value: parseTemplateString(x.value, envVariables),
})), })),
effectiveFinalBody, effectiveFinalBody,
} }