My personal thoughts only:
I own a grocery store. I place a sign out front, no Jews, no Blacks, no Gays, no Democrats, no Guns.
Now all EXCEPT "no Guns" is already illegal.
When a business opens its door to the public, then it (the business) surrenders many of the private property rights.