A girl from my social circle was drunk and slapped me in the face (pretty fucking hard) because of something non offensive that I said which she decided to take offence from. All I did after was say (or shout) "you're a fucking bitch" and walked off. There was only one other person in the room this whole time who saw it all. As I walked away she had realised she had fucked up and tried to apologise/explain herself (she knew she shouldn't have done it) but I just kind of stormed off upstairs and chilled with other people.

I know this wasn't the best way to react since I shouted and lost frame. How should I have reacted? Was my grudge childlike in behaviour (like a teenager having a hissy fit)? About an hour or two later I saw her and she was extremely upset so I just kind of said whatever forget about it but don't do it again.

I saw this as a blatant sign of disrespect and whilst I don't wish to get angry and lose frame, I also don't wish to be a pushover who allows girls to slap him like a bitch.

Edit: in a way this question almost boils down to when is it reasonable to get angry or when can it be within your frame?