function fluidRange(cssProp, minScreen, maxScreen) {
    if (minScreen === void 0) {
      minScreen = '320px';
    }
    if (maxScreen === void 0) {
      maxScreen = '1200px';
    }
    if (!Array.isArray(cssProp) && typeof cssProp !== 'object' || cssProp === null) {
      throw new PolishedError(49);
    }
    if (Array.isArray(cssProp)) {
      var mediaQueries = {};
      var fallbacks = {};
      for (var _iterator = _createForOfIteratorHelperLoose(cssProp), _step; !(_step = _iterator()).done;) {
        var _extends2, _extends3;
        var obj = _step.value;
        if (!obj.prop || !obj.fromSize || !obj.toSize) {
          throw new PolishedError(50);
        }
        fallbacks[obj.prop] = obj.fromSize;
        mediaQueries["@media (min-width: " + minScreen + ")"] = _extends__default["default"]({}, mediaQueries["@media (min-width: " + minScreen + ")"], (_extends2 = {}, _extends2[obj.prop] = between(obj.fromSize, obj.toSize, minScreen, maxScreen), _extends2));
        mediaQueries["@media (min-width: " + maxScreen + ")"] = _extends__default["default"]({}, mediaQueries["@media (min-width: " + maxScreen + ")"], (_extends3 = {}, _extends3[obj.prop] = obj.toSize, _extends3));
      }
      return _extends__default["default"]({}, fallbacks, mediaQueries);
    } else {
      var _ref, _ref2, _ref3;
      if (!cssProp.prop || !cssProp.fromSize || !cssProp.toSize) {
        throw new PolishedError(51);
      }
      return _ref3 = {}, _ref3[cssProp.prop] = cssProp.fromSize, _ref3["@media (min-width: " + minScreen + ")"] = (_ref = {}, _ref[cssProp.prop] = between(cssProp.fromSize, cssProp.toSize, minScreen, maxScreen), _ref), _ref3["@media (min-width: " + maxScreen + ")"] = (_ref2 = {}, _ref2[cssProp.prop] = cssProp.toSize, _ref2), _ref3;
    }
  }
Returns a set of media queries that resizes a property (or set of properties) between a provided fromSize and toSize. Accepts optional minScreen (defaults to '320px') and maxScreen (defaults to '1200px') to constrain the interpolation.

@example
// Styles as object usage
const styles = {
  ...fluidRange(
   {
       prop: 'padding',
       fromSize: '20px',
       toSize: '100px',
     },
     '400px',
     '1000px',
   )
}

// styled-components usage
const div = styled.div`
  ${fluidRange(
     {
       prop: 'padding',
       fromSize: '20px',
       toSize: '100px',
     },
     '400px',
     '1000px',
   )}
`

// CSS as JS Output

div: {
  "@media (min-width: 1000px)": Object {
    "padding": "100px",
  },
  "@media (min-width: 400px)": Object {
    "padding": "calc(-33.33333333333334px + 13.333333333333334vw)",
  },
  "padding": "20px",
}