cdc5e243f6950d477abb9973d757a18ec4fa03b07af5f027cc4a5569b90a9fe9478749e3bf3f3aeb511db1fb1a1c07a4bcf01c38fd1a54fd1830eb810a3a8e 631 B

12345678910111213141516
  1. /* @flow */
  2. import { inBrowser } from 'core/util/index'
  3. // check whether current browser encodes a char inside attribute values
  4. let div
  5. function getShouldDecode (href: boolean): boolean {
  6. div = div || document.createElement('div')
  7. div.innerHTML = href ? `<a href="\n"/>` : `<div a="\n"/>`
  8. return div.innerHTML.indexOf('&#10;') > 0
  9. }
  10. // #3663: IE encodes newlines inside attribute values while other browsers don't
  11. export const shouldDecodeNewlines = inBrowser ? getShouldDecode(false) : false
  12. // #6828: chrome encodes content in a[href]
  13. export const shouldDecodeNewlinesForHref = inBrowser ? getShouldDecode(true) : false