in packages/core/src/lambda/vue/configEditor/samInvokeFrontend.ts [194:238]
async parseConfig(config?: AwsSamDebuggerConfiguration) {
if (!config) {
return
}
const company = this.company
this.clearForm()
this.launchConfig = newLaunchConfig(config)
if (config.lambda?.payload) {
this.payload.value = JSON.stringify(config.lambda.payload.json, undefined, 4)
}
const localArgs = config.sam?.localArguments
if (!localArgs && this.payload.value) {
this.payloadOption = 'sampleEvents'
this.selectedFile = ''
}
if (localArgs?.includes('-e') || localArgs?.includes('--event')) {
const index = localArgs.findIndex((arg) => arg === '-e' || arg === '--event')
if (index !== -1 && localArgs[index + 1]) {
this.payloadOption = 'localFile'
this.selectedFile = await client.getFileName(localArgs[index + 1])
}
}
if (config.lambda?.environmentVariables) {
this.environmentVariables.value = JSON.stringify(config.lambda?.environmentVariables)
}
if (config.sam?.template?.parameters) {
this.parameters.value = JSON.stringify(config.sam?.template?.parameters)
}
if (config.api?.headers) {
this.headers.value = JSON.stringify(config.api?.headers)
}
if (config.api?.stageVariables) {
this.stageVariables.value = JSON.stringify(config.api?.stageVariables)
}
this.containerBuild = config.sam?.containerBuild ?? false
this.skipNewImageCheck = config.sam?.skipNewImageCheck ?? false
this.msg = `Loaded config: ${config.name}`
this.company = company
},