What few people have talked about is encounter management.
How many encounters are they going through before they decide to rest.
Assuming each encounter in a dungeon is the same CR as the party level, then it's the old 1/5th of resources consumed effect. That means after 5 encounters, they're pretty worn out.
The problem with a dungeon is, it can easily have more encounters than that. Yet it's not really safe to stop and rest in one. So knowing that, the party is going to have to stop sometime. Given walking time, killing time and looting time, you can easily clear out 5 rooms by mid-morning. Then what? The party's tired, and they've got 20 hours until spells refresh.
Now I don't know if the party in question is stopping earlier than this or not.
This is a predictable problem for any party. There's a limit to how many encounters they can actually take before they need rest. As a GM, it might be a good idea to estimate when this will occur and pace the adventure accordingly.
One formula might be, take party level times 4 and that's how many CR's total you get to use before you let them rest.
Granted, a dungeon is tricky to apply that formula which MIGHT work in a more linear game. But then, dungeon crawling adventures have a slew of challenges to running them well. Perhaps the point is, avoid doing them. While a D&D staple, they're not entirely realistic or practical to justify their existance.