{"ast":null,"code":"import hyphenate from 'hyphenate-style-name';\n/**\n * Convert camel cased property names to dash separated.\n *\n * @param {Object} style\n * @return {Object}\n */\n\nfunction convertCase(style) {\n var converted = {};\n\n for (var prop in style) {\n var key = prop.indexOf('--') === 0 ? prop : hyphenate(prop);\n converted[key] = style[prop];\n }\n\n if (style.fallbacks) {\n if (Array.isArray(style.fallbacks)) converted.fallbacks = style.fallbacks.map(convertCase);else converted.fallbacks = convertCase(style.fallbacks);\n }\n\n return converted;\n}\n/**\n * Allow camel cased property names by converting them back to dasherized.\n *\n * @param {Rule} rule\n */\n\n\nfunction camelCase() {\n function onProcessStyle(style) {\n if (Array.isArray(style)) {\n // Handle rules like @font-face, which can have multiple styles in an array\n for (var index = 0; index < style.length; index++) {\n style[index] = convertCase(style[index]);\n }\n\n return style;\n }\n\n return convertCase(style);\n }\n\n function onChangeValue(value, prop, rule) {\n if (prop.indexOf('--') === 0) {\n return value;\n }\n\n var hyphenatedProp = hyphenate(prop); // There was no camel case in place\n\n if (prop === hyphenatedProp) return value;\n rule.prop(hyphenatedProp, value); // Core will ignore that property value we set the proper one above.\n\n return null;\n }\n\n return {\n onProcessStyle: onProcessStyle,\n onChangeValue: onChangeValue\n };\n}\n\nexport default camelCase;","map":{"version":3,"sources":["/app/node_modules/jss-plugin-camel-case/dist/jss-plugin-camel-case.esm.js"],"names":["hyphenate","convertCase","style","converted","prop","key","indexOf","fallbacks","Array","isArray","map","camelCase","onProcessStyle","index","length","onChangeValue","value","rule","hyphenatedProp"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,sBAAtB;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASC,WAAT,CAAqBC,KAArB,EAA4B;AAC1B,MAAIC,SAAS,GAAG,EAAhB;;AAEA,OAAK,IAAIC,IAAT,IAAiBF,KAAjB,EAAwB;AACtB,QAAIG,GAAG,GAAGD,IAAI,CAACE,OAAL,CAAa,IAAb,MAAuB,CAAvB,GAA2BF,IAA3B,GAAkCJ,SAAS,CAACI,IAAD,CAArD;AACAD,IAAAA,SAAS,CAACE,GAAD,CAAT,GAAiBH,KAAK,CAACE,IAAD,CAAtB;AACD;;AAED,MAAIF,KAAK,CAACK,SAAV,EAAqB;AACnB,QAAIC,KAAK,CAACC,OAAN,CAAcP,KAAK,CAACK,SAApB,CAAJ,EAAoCJ,SAAS,CAACI,SAAV,GAAsBL,KAAK,CAACK,SAAN,CAAgBG,GAAhB,CAAoBT,WAApB,CAAtB,CAApC,KAAgGE,SAAS,CAACI,SAAV,GAAsBN,WAAW,CAACC,KAAK,CAACK,SAAP,CAAjC;AACjG;;AAED,SAAOJ,SAAP;AACD;AACD;AACA;AACA;AACA;AACA;;;AAGA,SAASQ,SAAT,GAAqB;AACnB,WAASC,cAAT,CAAwBV,KAAxB,EAA+B;AAC7B,QAAIM,KAAK,CAACC,OAAN,CAAcP,KAAd,CAAJ,EAA0B;AACxB;AACA,WAAK,IAAIW,KAAK,GAAG,CAAjB,EAAoBA,KAAK,GAAGX,KAAK,CAACY,MAAlC,EAA0CD,KAAK,EAA/C,EAAmD;AACjDX,QAAAA,KAAK,CAACW,KAAD,CAAL,GAAeZ,WAAW,CAACC,KAAK,CAACW,KAAD,CAAN,CAA1B;AACD;;AAED,aAAOX,KAAP;AACD;;AAED,WAAOD,WAAW,CAACC,KAAD,CAAlB;AACD;;AAED,WAASa,aAAT,CAAuBC,KAAvB,EAA8BZ,IAA9B,EAAoCa,IAApC,EAA0C;AACxC,QAAIb,IAAI,CAACE,OAAL,CAAa,IAAb,MAAuB,CAA3B,EAA8B;AAC5B,aAAOU,KAAP;AACD;;AAED,QAAIE,cAAc,GAAGlB,SAAS,CAACI,IAAD,CAA9B,CALwC,CAKF;;AAEtC,QAAIA,IAAI,KAAKc,cAAb,EAA6B,OAAOF,KAAP;AAC7BC,IAAAA,IAAI,CAACb,IAAL,CAAUc,cAAV,EAA0BF,KAA1B,EARwC,CAQN;;AAElC,WAAO,IAAP;AACD;;AAED,SAAO;AACLJ,IAAAA,cAAc,EAAEA,cADX;AAELG,IAAAA,aAAa,EAAEA;AAFV,GAAP;AAID;;AAED,eAAeJ,SAAf","sourcesContent":["import hyphenate from 'hyphenate-style-name';\n\n/**\n * Convert camel cased property names to dash separated.\n *\n * @param {Object} style\n * @return {Object}\n */\n\nfunction convertCase(style) {\n var converted = {};\n\n for (var prop in style) {\n var key = prop.indexOf('--') === 0 ? prop : hyphenate(prop);\n converted[key] = style[prop];\n }\n\n if (style.fallbacks) {\n if (Array.isArray(style.fallbacks)) converted.fallbacks = style.fallbacks.map(convertCase);else converted.fallbacks = convertCase(style.fallbacks);\n }\n\n return converted;\n}\n/**\n * Allow camel cased property names by converting them back to dasherized.\n *\n * @param {Rule} rule\n */\n\n\nfunction camelCase() {\n function onProcessStyle(style) {\n if (Array.isArray(style)) {\n // Handle rules like @font-face, which can have multiple styles in an array\n for (var index = 0; index < style.length; index++) {\n style[index] = convertCase(style[index]);\n }\n\n return style;\n }\n\n return convertCase(style);\n }\n\n function onChangeValue(value, prop, rule) {\n if (prop.indexOf('--') === 0) {\n return value;\n }\n\n var hyphenatedProp = hyphenate(prop); // There was no camel case in place\n\n if (prop === hyphenatedProp) return value;\n rule.prop(hyphenatedProp, value); // Core will ignore that property value we set the proper one above.\n\n return null;\n }\n\n return {\n onProcessStyle: onProcessStyle,\n onChangeValue: onChangeValue\n };\n}\n\nexport default camelCase;\n"]},"metadata":{},"sourceType":"module"}