{"ast":null,"code":"import { supportedKeyframes, supportedValue, supportedProperty } from 'css-vendor';\nimport { toCssValue } from 'jss';\n/**\n * Add vendor prefix to a property name when needed.\n *\n * @api public\n */\n\nfunction jssVendorPrefixer() {\n function onProcessRule(rule) {\n if (rule.type === 'keyframes') {\n var atRule = rule;\n atRule.at = supportedKeyframes(atRule.at);\n }\n }\n\n function prefixStyle(style) {\n for (var prop in style) {\n var value = style[prop];\n\n if (prop === 'fallbacks' && Array.isArray(value)) {\n style[prop] = value.map(prefixStyle);\n continue;\n }\n\n var changeProp = false;\n var supportedProp = supportedProperty(prop);\n if (supportedProp && supportedProp !== prop) changeProp = true;\n var changeValue = false;\n var supportedValue$1 = supportedValue(supportedProp, toCssValue(value));\n if (supportedValue$1 && supportedValue$1 !== value) changeValue = true;\n\n if (changeProp || changeValue) {\n if (changeProp) delete style[prop];\n style[supportedProp || prop] = supportedValue$1 || value;\n }\n }\n\n return style;\n }\n\n function onProcessStyle(style, rule) {\n if (rule.type !== 'style') return style;\n return prefixStyle(style);\n }\n\n function onChangeValue(value, prop) {\n return supportedValue(prop, toCssValue(value)) || value;\n }\n\n return {\n onProcessRule: onProcessRule,\n onProcessStyle: onProcessStyle,\n onChangeValue: onChangeValue\n };\n}\n\nexport default jssVendorPrefixer;","map":{"version":3,"sources":["/app/node_modules/jss-plugin-vendor-prefixer/dist/jss-plugin-vendor-prefixer.esm.js"],"names":["supportedKeyframes","supportedValue","supportedProperty","toCssValue","jssVendorPrefixer","onProcessRule","rule","type","atRule","at","prefixStyle","style","prop","value","Array","isArray","map","changeProp","supportedProp","changeValue","supportedValue$1","onProcessStyle","onChangeValue"],"mappings":"AAAA,SAASA,kBAAT,EAA6BC,cAA7B,EAA6CC,iBAA7C,QAAsE,YAAtE;AACA,SAASC,UAAT,QAA2B,KAA3B;AAEA;AACA;AACA;AACA;AACA;;AAEA,SAASC,iBAAT,GAA6B;AAC3B,WAASC,aAAT,CAAuBC,IAAvB,EAA6B;AAC3B,QAAIA,IAAI,CAACC,IAAL,KAAc,WAAlB,EAA+B;AAC7B,UAAIC,MAAM,GAAGF,IAAb;AACAE,MAAAA,MAAM,CAACC,EAAP,GAAYT,kBAAkB,CAACQ,MAAM,CAACC,EAAR,CAA9B;AACD;AACF;;AAED,WAASC,WAAT,CAAqBC,KAArB,EAA4B;AAC1B,SAAK,IAAIC,IAAT,IAAiBD,KAAjB,EAAwB;AACtB,UAAIE,KAAK,GAAGF,KAAK,CAACC,IAAD,CAAjB;;AAEA,UAAIA,IAAI,KAAK,WAAT,IAAwBE,KAAK,CAACC,OAAN,CAAcF,KAAd,CAA5B,EAAkD;AAChDF,QAAAA,KAAK,CAACC,IAAD,CAAL,GAAcC,KAAK,CAACG,GAAN,CAAUN,WAAV,CAAd;AACA;AACD;;AAED,UAAIO,UAAU,GAAG,KAAjB;AACA,UAAIC,aAAa,GAAGhB,iBAAiB,CAACU,IAAD,CAArC;AACA,UAAIM,aAAa,IAAIA,aAAa,KAAKN,IAAvC,EAA6CK,UAAU,GAAG,IAAb;AAC7C,UAAIE,WAAW,GAAG,KAAlB;AACA,UAAIC,gBAAgB,GAAGnB,cAAc,CAACiB,aAAD,EAAgBf,UAAU,CAACU,KAAD,CAA1B,CAArC;AACA,UAAIO,gBAAgB,IAAIA,gBAAgB,KAAKP,KAA7C,EAAoDM,WAAW,GAAG,IAAd;;AAEpD,UAAIF,UAAU,IAAIE,WAAlB,EAA+B;AAC7B,YAAIF,UAAJ,EAAgB,OAAON,KAAK,CAACC,IAAD,CAAZ;AAChBD,QAAAA,KAAK,CAACO,aAAa,IAAIN,IAAlB,CAAL,GAA+BQ,gBAAgB,IAAIP,KAAnD;AACD;AACF;;AAED,WAAOF,KAAP;AACD;;AAED,WAASU,cAAT,CAAwBV,KAAxB,EAA+BL,IAA/B,EAAqC;AACnC,QAAIA,IAAI,CAACC,IAAL,KAAc,OAAlB,EAA2B,OAAOI,KAAP;AAC3B,WAAOD,WAAW,CAACC,KAAD,CAAlB;AACD;;AAED,WAASW,aAAT,CAAuBT,KAAvB,EAA8BD,IAA9B,EAAoC;AAClC,WAAOX,cAAc,CAACW,IAAD,EAAOT,UAAU,CAACU,KAAD,CAAjB,CAAd,IAA2CA,KAAlD;AACD;;AAED,SAAO;AACLR,IAAAA,aAAa,EAAEA,aADV;AAELgB,IAAAA,cAAc,EAAEA,cAFX;AAGLC,IAAAA,aAAa,EAAEA;AAHV,GAAP;AAKD;;AAED,eAAelB,iBAAf","sourcesContent":["import { supportedKeyframes, supportedValue, supportedProperty } from 'css-vendor';\nimport { toCssValue } from 'jss';\n\n/**\n * Add vendor prefix to a property name when needed.\n *\n * @api public\n */\n\nfunction jssVendorPrefixer() {\n function onProcessRule(rule) {\n if (rule.type === 'keyframes') {\n var atRule = rule;\n atRule.at = supportedKeyframes(atRule.at);\n }\n }\n\n function prefixStyle(style) {\n for (var prop in style) {\n var value = style[prop];\n\n if (prop === 'fallbacks' && Array.isArray(value)) {\n style[prop] = value.map(prefixStyle);\n continue;\n }\n\n var changeProp = false;\n var supportedProp = supportedProperty(prop);\n if (supportedProp && supportedProp !== prop) changeProp = true;\n var changeValue = false;\n var supportedValue$1 = supportedValue(supportedProp, toCssValue(value));\n if (supportedValue$1 && supportedValue$1 !== value) changeValue = true;\n\n if (changeProp || changeValue) {\n if (changeProp) delete style[prop];\n style[supportedProp || prop] = supportedValue$1 || value;\n }\n }\n\n return style;\n }\n\n function onProcessStyle(style, rule) {\n if (rule.type !== 'style') return style;\n return prefixStyle(style);\n }\n\n function onChangeValue(value, prop) {\n return supportedValue(prop, toCssValue(value)) || value;\n }\n\n return {\n onProcessRule: onProcessRule,\n onProcessStyle: onProcessStyle,\n onChangeValue: onChangeValue\n };\n}\n\nexport default jssVendorPrefixer;\n"]},"metadata":{},"sourceType":"module"}