It can last for a few weeks. Keep in mind, that even if you aren't seeing discharge, she can still be in heat!!! I say ballpark each "phase" lasts a week, but to be safe just assume she is in heat/fertile for the entire month or more.

Some vets will still spay a pet even while they are in heat. I STRONGLY recommend you take her in for an exam now so you can discuss this with your vet and schedule a spay during a timeframe that your vet feels comfortable with.

In the mean time, DO NOT let her outdoors unattended AT ANY TIME FOR ANY REASON. This includes letting her out your back door into a fenced in backyard and watching her from the doorway. Take her out to potty on a leash!!!!! Intact males can smell a female in heat from miles away and I have heard stories of them jumping fences and breaking glass storm doors to get to a female in heat. Some can even be aggressive, and that is NOT something you want to get in the middle of.

Oops, forgot to add, average time for females to go into heat is around 7-9 months. It is true that smaller breeds mature faster than larger breeds and therefore will go into heat sooner. So she isn't "early".