Factored out isBrowser check into runtime-util