/**
 * Export javascript style and css style vendor prefixes.
 * Based on "transform" support test.
 */

import isBrowser from 'is-browser'

let js = ''
let css = ''

// We should not do anything if required serverside.
if (isBrowser) {
  const jsCssMap = {
    Webkit: '-webkit-',
    Moz: '-moz-',
    // IE did it wrong again ...
    ms: '-ms-',
    O: '-o-'
  }
  const style = document.createElement('p').style
  const testProp = 'Transform'

  for (const key in jsCssMap) {
    if ((key + testProp) in style) {
      js = key
      css = jsCssMap[key]
      break
    }
  }
}

/**
 * Vendor prefix string for the current browser.
 *
 * @type {{js: String, css: String}}
 * @api public
 */
export default {js, css}

@@ -359,16 +359,65 @@
 o-'%0A  %7D%0A
+  const prefixes = %5B'Moz', 'Webkit', 'ms', 'O'%5D%0A%0A
   const 
@@ -496,50 +496,54 @@
 %0A%0A  
-for (
 const 
-key in jsCssMap) %7B%0A    if ((key
+vendor = prefixes.find(prefix =%3E (prefix
  + t
@@ -560,21 +560,33 @@
 n style)
- %7B
 %0A  
+if (vendor) %7B%0A
     js =
@@ -590,14 +590,15 @@
 s = 
-key%0A  
+vendor%0A
     
@@ -616,30 +616,15 @@
 Map%5B
-key%5D%0A      break%0A    %7D
+vendor%5D
 %0A  %7D

fix vendor prefix detection in Firefox 49