class Capybara::Selenium::SafariNode

def visible_text

def visible_text
  return '' unless visible?
  vis_text = driver.execute_script('return arguments[0].innerText', self)
  vis_text.squeeze(' ')
          .gsub(/[\ \n]*\n[\ \n]*/, "\n")
          .gsub(/\A[[:space:]&&[^\u00a0]]+/, '')
          .gsub(/[[:space:]&&[^\u00a0]]+\z/, '')
          .tr("\u00a0", ' ')
end