I’m not aware of any off the shelf solutions, but once you have a working IaC-pipeline you can trigger it based on different inputs.
E.g. on input could be web frontend changing variables used by your terraform. Terraform simplifies this, by allowing also json files
https://www.terraform.io/language/syntax/json#json-file-structure, which are easier to generate compared to hcl.
So overall, your web frontend changes a json variables file ~> commits the change ~> pipeline executes the change.