abf67efc488ef40acbe0e132871c805b.json 4.16 KB
{"ast":null,"code":"var camel2hyphen = require('string-convert/camel2hyphen');\n\nvar isDimension = function (feature) {\n  var re = /[height|width]$/;\n  return re.test(feature);\n};\n\nvar obj2mq = function (obj) {\n  var mq = '';\n  var features = Object.keys(obj);\n  features.forEach(function (feature, index) {\n    var value = obj[feature];\n    feature = camel2hyphen(feature); // Add px to dimension features\n\n    if (isDimension(feature) && typeof value === 'number') {\n      value = value + 'px';\n    }\n\n    if (value === true) {\n      mq += feature;\n    } else if (value === false) {\n      mq += 'not ' + feature;\n    } else {\n      mq += '(' + feature + ': ' + value + ')';\n    }\n\n    if (index < features.length - 1) {\n      mq += ' and ';\n    }\n  });\n  return mq;\n};\n\nvar json2mq = function (query) {\n  var mq = '';\n\n  if (typeof query === 'string') {\n    return query;\n  } // Handling array of media queries\n\n\n  if (query instanceof Array) {\n    query.forEach(function (q, index) {\n      mq += obj2mq(q);\n\n      if (index < query.length - 1) {\n        mq += ', ';\n      }\n    });\n    return mq;\n  } // Handling single media query\n\n\n  return obj2mq(query);\n};\n\nmodule.exports = json2mq;","map":{"version":3,"sources":["C:/Users/kkwan_000/Desktop/git/2017110269/minsung/node_modules/json2mq/index.js"],"names":["camel2hyphen","require","isDimension","feature","re","test","obj2mq","obj","mq","features","Object","keys","forEach","index","value","length","json2mq","query","Array","q","module","exports"],"mappings":"AAAA,IAAIA,YAAY,GAAGC,OAAO,CAAC,6BAAD,CAA1B;;AAEA,IAAIC,WAAW,GAAG,UAAUC,OAAV,EAAmB;AACnC,MAAIC,EAAE,GAAG,iBAAT;AACA,SAAOA,EAAE,CAACC,IAAH,CAAQF,OAAR,CAAP;AACD,CAHD;;AAKA,IAAIG,MAAM,GAAG,UAAUC,GAAV,EAAe;AAC1B,MAAIC,EAAE,GAAG,EAAT;AACA,MAAIC,QAAQ,GAAGC,MAAM,CAACC,IAAP,CAAYJ,GAAZ,CAAf;AACAE,EAAAA,QAAQ,CAACG,OAAT,CAAiB,UAAUT,OAAV,EAAmBU,KAAnB,EAA0B;AACzC,QAAIC,KAAK,GAAGP,GAAG,CAACJ,OAAD,CAAf;AACAA,IAAAA,OAAO,GAAGH,YAAY,CAACG,OAAD,CAAtB,CAFyC,CAGzC;;AACA,QAAID,WAAW,CAACC,OAAD,CAAX,IAAwB,OAAOW,KAAP,KAAiB,QAA7C,EAAuD;AACrDA,MAAAA,KAAK,GAAGA,KAAK,GAAG,IAAhB;AACD;;AACD,QAAIA,KAAK,KAAK,IAAd,EAAoB;AAClBN,MAAAA,EAAE,IAAIL,OAAN;AACD,KAFD,MAEO,IAAIW,KAAK,KAAK,KAAd,EAAqB;AAC1BN,MAAAA,EAAE,IAAI,SAASL,OAAf;AACD,KAFM,MAEA;AACLK,MAAAA,EAAE,IAAI,MAAML,OAAN,GAAgB,IAAhB,GAAuBW,KAAvB,GAA+B,GAArC;AACD;;AACD,QAAID,KAAK,GAAGJ,QAAQ,CAACM,MAAT,GAAgB,CAA5B,EAA+B;AAC7BP,MAAAA,EAAE,IAAI,OAAN;AACD;AACF,GAjBD;AAkBA,SAAOA,EAAP;AACD,CAtBD;;AAwBA,IAAIQ,OAAO,GAAG,UAAUC,KAAV,EAAiB;AAC7B,MAAIT,EAAE,GAAG,EAAT;;AACA,MAAI,OAAOS,KAAP,KAAiB,QAArB,EAA+B;AAC7B,WAAOA,KAAP;AACD,GAJ4B,CAK7B;;;AACA,MAAIA,KAAK,YAAYC,KAArB,EAA4B;AAC1BD,IAAAA,KAAK,CAACL,OAAN,CAAc,UAAUO,CAAV,EAAaN,KAAb,EAAoB;AAChCL,MAAAA,EAAE,IAAIF,MAAM,CAACa,CAAD,CAAZ;;AACA,UAAIN,KAAK,GAAGI,KAAK,CAACF,MAAN,GAAa,CAAzB,EAA4B;AAC1BP,QAAAA,EAAE,IAAI,IAAN;AACD;AACF,KALD;AAMA,WAAOA,EAAP;AACD,GAd4B,CAe7B;;;AACA,SAAOF,MAAM,CAACW,KAAD,CAAb;AACD,CAjBD;;AAmBAG,MAAM,CAACC,OAAP,GAAiBL,OAAjB","sourcesContent":["var camel2hyphen = require('string-convert/camel2hyphen');\n\nvar isDimension = function (feature) {\n  var re = /[height|width]$/;\n  return re.test(feature);\n};\n\nvar obj2mq = function (obj) {\n  var mq = '';\n  var features = Object.keys(obj);\n  features.forEach(function (feature, index) {\n    var value = obj[feature];\n    feature = camel2hyphen(feature);\n    // Add px to dimension features\n    if (isDimension(feature) && typeof value === 'number') {\n      value = value + 'px';\n    }\n    if (value === true) {\n      mq += feature;\n    } else if (value === false) {\n      mq += 'not ' + feature;\n    } else {\n      mq += '(' + feature + ': ' + value + ')';\n    }\n    if (index < features.length-1) {\n      mq += ' and '\n    }\n  });\n  return mq;\n};\n\nvar json2mq = function (query) {\n  var mq = '';\n  if (typeof query === 'string') {\n    return query;\n  }\n  // Handling array of media queries\n  if (query instanceof Array) {\n    query.forEach(function (q, index) {\n      mq += obj2mq(q);\n      if (index < query.length-1) {\n        mq += ', '\n      }\n    });\n    return mq;\n  }\n  // Handling single media query\n  return obj2mq(query);\n};\n\nmodule.exports = json2mq;"]},"metadata":{},"sourceType":"script"}