What is the best practice using terraform to delete gcp vpc while vpc firewall rules still active


I created fireweall rules with depends_on set on vpc explicitly to ensure the sequence. however, when terraform plan decided to recreate vpc, it fails to delete the firewall rules first then delete vpc, so terraform apply would fail. I had to goto console to remove the firewall rules manually before running the failed terraform apply again.

is there an automated way to force firewall rule deletion prior to vpc deletion?