in radlab-ui/webapp/src/utils/terraform.ts [115:145]
type: formatType(hclVar.type),
default: defaultValue,
// In TF, default = "" is how we say it's optional
required: typeof hclVar.default === "undefined" || hclVar.default !== "",
group,
order,
options,
updateSafe,
}
}
/**
* Parse a variables.tf file into a RAD Lab UI variable list
* @param body: string The body of the HCL variables.tf file
* @returns An array of UI variables
*/
export const parseVarsFile = (body: string) => {
const parseData: IRawParsed = hclParse.parseToObject(body)
const variables = parseData[0].variable
return Object.entries(variables).map(mapHclToUIVar)
}
export const groupVariables = (variableList: IUIVariable[]) =>
groupBy(variableList, "group")
/**
* Represents the formik field default value
**/
export const initialFormikData = (data: IFormData) => {
const initialObjData: IObjKeyPair = {}
Object.keys(data).forEach((formVariables) => {