{"ast":null,"code":"import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nimport get from 'lodash.get';\nimport { resolveValueWithBreakpoint } from \"../hooks/useThemeProps/resolveValueWithBreakpoint\";\nimport { hasValidBreakpointFormat, transparentize } from \"./tools\";\nimport { isEmptyObj } from \"../utils/isEmptyObj\";\nvar isNumber = function isNumber(n) {\n  return typeof n === 'number' && !isNaN(n);\n};\nexport var getColor = function getColor(rawValue, scale, theme) {\n  var alphaMatched = typeof rawValue === 'string' ? rawValue === null || rawValue === void 0 ? void 0 : rawValue.match(/:alpha\\.\\d\\d?\\d?/) : false;\n  if (alphaMatched) {\n    var colorMatched = rawValue === null || rawValue === void 0 ? void 0 : rawValue.match(/^.*?(?=:alpha)/);\n    var _color = colorMatched ? colorMatched[0] : colorMatched;\n    var alphaValue = alphaMatched[0].split('.')[1];\n    var alphaFromToken = get(theme.opacity, alphaValue, alphaValue);\n    var alpha = alphaFromToken ? parseFloat(alphaFromToken) : 1;\n    var newColor = transparentize(_color, alpha)(theme);\n    return newColor;\n  } else {\n    return get(scale, rawValue, rawValue);\n  }\n};\nvar getMargin = function getMargin(n, scale) {\n  n = convertStringNumberToNumber('margin', n);\n  if (!isNumber(n)) {\n    return get(scale, n, n);\n  }\n  var isNegative = n < 0;\n  var absolute = Math.abs(n);\n  var value = get(scale, absolute, absolute);\n  if (!isNumber(value)) {\n    return isNegative ? '-' + value : value;\n  }\n  return value * (isNegative ? -1 : 1);\n};\nexport var layout = {\n  width: {\n    property: 'width',\n    scale: 'sizes'\n  },\n  w: {\n    property: 'width',\n    scale: 'sizes'\n  },\n  height: {\n    property: 'height',\n    scale: 'sizes'\n  },\n  h: {\n    property: 'height',\n    scale: 'sizes'\n  },\n  minWidth: {\n    property: 'minWidth',\n    scale: 'sizes'\n  },\n  minW: {\n    property: 'minWidth',\n    scale: 'sizes'\n  },\n  minHeight: {\n    property: 'minHeight',\n    scale: 'sizes'\n  },\n  minH: {\n    property: 'minHeight',\n    scale: 'sizes'\n  },\n  maxWidth: {\n    property: 'maxWidth',\n    scale: 'sizes'\n  },\n  maxW: {\n    property: 'maxWidth',\n    scale: 'sizes'\n  },\n  maxHeight: {\n    property: 'maxHeight',\n    scale: 'sizes'\n  },\n  maxH: {\n    property: 'maxHeight',\n    scale: 'sizes'\n  },\n  size: {\n    properties: ['width', 'height'],\n    scale: 'sizes'\n  },\n  boxSize: {\n    properties: ['width', 'height'],\n    scale: 'sizes'\n  },\n  overflow: true,\n  overflowX: true,\n  overflowY: true,\n  display: true,\n  verticalAlign: true,\n  textAlign: true\n};\nexport var flexbox = {\n  alignItems: true,\n  alignContent: true,\n  justifyItems: true,\n  justifyContent: true,\n  flexWrap: true,\n  flexDirection: true,\n  flexDir: {\n    property: 'flexDirection'\n  },\n  flex: true,\n  flexGrow: true,\n  flexShrink: true,\n  flexBasis: true,\n  justifySelf: true,\n  alignSelf: true,\n  order: true\n};\nexport var position = {\n  position: true,\n  zIndex: {\n    property: 'zIndex'\n  },\n  top: {\n    property: 'top',\n    scale: 'space'\n  },\n  right: {\n    property: 'right',\n    scale: 'space'\n  },\n  bottom: {\n    property: 'bottom',\n    scale: 'space'\n  },\n  left: {\n    property: 'left',\n    scale: 'space'\n  }\n};\nexport var color = {\n  color: {\n    property: 'color',\n    scale: 'colors',\n    transformer: getColor\n  },\n  tintColor: {\n    property: 'tintColor',\n    scale: 'colors',\n    transformer: getColor\n  },\n  backgroundColor: {\n    property: 'backgroundColor',\n    scale: 'colors',\n    transformer: getColor\n  },\n  opacity: {\n    property: 'opacity',\n    scale: 'opacity'\n  },\n  bg: {\n    property: 'backgroundColor',\n    scale: 'colors',\n    transformer: getColor\n  },\n  bgColor: {\n    property: 'backgroundColor',\n    scale: 'colors',\n    transformer: getColor\n  },\n  background: {\n    property: 'backgroundColor',\n    scale: 'colors',\n    transformer: getColor\n  },\n  textDecorationColor: {\n    property: 'textDecorationColor',\n    scale: 'colors',\n    transformer: getColor\n  }\n};\nexport var border = {\n  borderWidth: {\n    property: 'borderWidth',\n    scale: 'borderWidths'\n  },\n  borderStyle: {\n    property: 'borderStyle',\n    scale: 'borderStyles'\n  },\n  borderColor: {\n    property: 'borderColor',\n    scale: 'colors',\n    transformer: getColor\n  },\n  borderRadius: {\n    property: 'borderRadius',\n    scale: 'radii'\n  },\n  borderTop: {\n    property: 'borderTop',\n    scale: 'borders'\n  },\n  borderTopRadius: {\n    properties: ['borderTopLeftRadius', 'borderTopRightRadius'],\n    scale: 'radii'\n  },\n  borderLeftRadius: {\n    properties: ['borderTopLeftRadius', 'borderBottomLeftRadius'],\n    scale: 'radii'\n  },\n  borderRightRadius: {\n    properties: ['borderTopRightRadius', 'borderBottomRightRadius'],\n    scale: 'radii'\n  },\n  borderTopLeftRadius: {\n    property: 'borderTopLeftRadius',\n    scale: 'radii'\n  },\n  borderTopRightRadius: {\n    property: 'borderTopRightRadius',\n    scale: 'radii'\n  },\n  borderRight: {\n    property: 'borderRight',\n    scale: 'borders'\n  },\n  borderBottom: {\n    property: 'borderBottom',\n    scale: 'borders'\n  },\n  borderBottomLeftRadius: {\n    property: 'borderBottomLeftRadius',\n    scale: 'radii'\n  },\n  borderBottomRightRadius: {\n    property: 'borderBottomRightRadius',\n    scale: 'radii'\n  },\n  borderLeft: {\n    property: 'borderLeft',\n    scale: 'borders'\n  },\n  borderX: {\n    properties: ['borderLeft', 'borderRight'],\n    scale: 'borders'\n  },\n  borderY: {\n    properties: ['borderTop', 'borderBottom'],\n    scale: 'borders'\n  },\n  borderTopWidth: {\n    property: 'borderTopWidth',\n    scale: 'borderWidths'\n  },\n  borderTopColor: {\n    property: 'borderTopColor',\n    scale: 'colors',\n    transformer: getColor\n  },\n  borderTopStyle: {\n    property: 'borderTopStyle',\n    scale: 'borderStyles'\n  },\n  borderBottomWidth: {\n    property: 'borderBottomWidth',\n    scale: 'borderWidths'\n  },\n  borderBottomColor: {\n    property: 'borderBottomColor',\n    scale: 'colors',\n    transformer: getColor\n  },\n  borderBottomStyle: {\n    property: 'borderBottomStyle',\n    scale: 'borderStyles'\n  },\n  borderLeftWidth: {\n    property: 'borderLeftWidth',\n    scale: 'borderWidths'\n  },\n  borderLeftColor: {\n    property: 'borderLeftColor',\n    scale: 'colors',\n    transformer: getColor\n  },\n  borderLeftStyle: {\n    property: 'borderLeftStyle',\n    scale: 'borderStyles'\n  },\n  borderRightWidth: {\n    property: 'borderRightWidth',\n    scale: 'borderWidths'\n  },\n  borderRightColor: {\n    property: 'borderRightColor',\n    scale: 'colors',\n    transformer: getColor\n  },\n  borderRightStyle: {\n    property: 'borderRightStyle',\n    scale: 'borderStyles'\n  },\n  rounded: {\n    property: 'borderRadius',\n    scale: 'radii'\n  },\n  roundedTopLeft: {\n    property: 'borderTopLeftRadius',\n    scale: 'radii'\n  },\n  roundedTopRight: {\n    property: 'borderTopRightRadius',\n    scale: 'radii'\n  },\n  roundedBottomLeft: {\n    property: 'borderBottomLeftRadius',\n    scale: 'radii'\n  },\n  roundedBottomRight: {\n    property: 'borderBottomRightRadius',\n    scale: 'radii'\n  },\n  roundedTop: {\n    properties: ['borderTopLeftRadius', 'borderTopRightRadius'],\n    scale: 'radii'\n  },\n  borderBottomRadius: {\n    properties: ['borderBottomLeftRadius', 'borderBottomRightRadius'],\n    scale: 'radii'\n  },\n  roundedBottom: {\n    properties: ['borderBottomLeftRadius', 'borderBottomRightRadius'],\n    scale: 'radii'\n  },\n  roundedLeft: {\n    properties: ['borderTopLeftRadius', 'borderBottomLeftRadius'],\n    scale: 'radii'\n  },\n  roundedRight: {\n    properties: ['borderTopRightRadius', 'borderBottomRightRadius'],\n    scale: 'radii'\n  }\n};\nexport var background = {\n  backgroundSize: true,\n  backgroundPosition: true,\n  backgroundRepeat: true,\n  backgroundAttachment: true,\n  backgroundBlendMode: true,\n  bgImage: {\n    property: 'backgroundImage'\n  },\n  bgImg: {\n    property: 'backgroundImage'\n  },\n  bgBlendMode: {\n    property: 'backgroundBlendMode'\n  },\n  bgSize: {\n    property: 'backgroundSize'\n  },\n  bgPosition: {\n    property: 'backgroundPosition'\n  },\n  bgPos: {\n    property: 'backgroundPosition'\n  },\n  bgRepeat: {\n    property: 'backgroundRepeat'\n  },\n  bgAttachment: {\n    property: 'backgroundAttachment'\n  }\n};\nexport var space = {\n  margin: {\n    property: 'margin',\n    scale: 'space',\n    transformer: getMargin\n  },\n  m: {\n    property: 'margin',\n    scale: 'space',\n    transformer: getMargin\n  },\n  marginTop: {\n    property: 'marginTop',\n    scale: 'space',\n    transformer: getMargin\n  },\n  mt: {\n    property: 'marginTop',\n    scale: 'space',\n    transformer: getMargin\n  },\n  marginRight: {\n    property: 'marginRight',\n    scale: 'space',\n    transformer: getMargin\n  },\n  mr: {\n    property: 'marginRight',\n    scale: 'space',\n    transformer: getMargin\n  },\n  marginBottom: {\n    property: 'marginBottom',\n    scale: 'space',\n    transformer: getMargin\n  },\n  mb: {\n    property: 'marginBottom',\n    scale: 'space',\n    transformer: getMargin\n  },\n  marginLeft: {\n    property: 'marginLeft',\n    scale: 'space',\n    transformer: getMargin\n  },\n  ml: {\n    property: 'marginLeft',\n    scale: 'space',\n    transformer: getMargin\n  },\n  marginX: {\n    properties: ['marginLeft', 'marginRight'],\n    scale: 'space',\n    transformer: getMargin\n  },\n  mx: {\n    properties: ['marginLeft', 'marginRight'],\n    scale: 'space',\n    transformer: getMargin\n  },\n  marginY: {\n    properties: ['marginTop', 'marginBottom'],\n    scale: 'space',\n    transformer: getMargin\n  },\n  my: {\n    properties: ['marginTop', 'marginBottom'],\n    scale: 'space',\n    transformer: getMargin\n  },\n  padding: {\n    property: 'padding',\n    scale: 'space'\n  },\n  p: {\n    property: 'padding',\n    scale: 'space'\n  },\n  paddingTop: {\n    property: 'paddingTop',\n    scale: 'space'\n  },\n  pt: {\n    property: 'paddingTop',\n    scale: 'space'\n  },\n  paddingRight: {\n    property: 'paddingRight',\n    scale: 'space'\n  },\n  pr: {\n    property: 'paddingRight',\n    scale: 'space'\n  },\n  paddingBottom: {\n    property: 'paddingBottom',\n    scale: 'space'\n  },\n  pb: {\n    property: 'paddingBottom',\n    scale: 'space'\n  },\n  paddingLeft: {\n    property: 'paddingLeft',\n    scale: 'space'\n  },\n  pl: {\n    property: 'paddingLeft',\n    scale: 'space'\n  },\n  paddingX: {\n    properties: ['paddingLeft', 'paddingRight'],\n    scale: 'space'\n  },\n  px: {\n    properties: ['paddingLeft', 'paddingRight'],\n    scale: 'space'\n  },\n  paddingY: {\n    properties: ['paddingTop', 'paddingBottom'],\n    scale: 'space'\n  },\n  py: {\n    properties: ['paddingTop', 'paddingBottom'],\n    scale: 'space'\n  },\n  gap: {\n    property: 'gap',\n    scale: 'space'\n  }\n};\nexport var typography = {\n  fontFamily: {\n    property: 'fontFamily',\n    scale: 'fonts',\n    transformer: function transformer(val, scale) {\n      var value;\n      if (scale.hasOwnProperty(val)) {\n        value = get(scale, val);\n      } else {\n        value = get(scale, val, val);\n      }\n      return value ? value.toString() : undefined;\n    }\n  },\n  fontSize: {\n    property: 'fontSize',\n    scale: 'fontSizes'\n  },\n  fontWeight: {\n    property: 'fontWeight',\n    scale: 'fontWeights',\n    transformer: function transformer(val, scale) {\n      return val ? get(scale, val, val).toString() : val;\n    }\n  },\n  lineHeight: {\n    property: 'lineHeight',\n    scale: 'lineHeights'\n  },\n  letterSpacing: {\n    property: 'letterSpacing',\n    scale: 'letterSpacings'\n  },\n  textAlign: true,\n  fontStyle: true,\n  wordBreak: true,\n  overflowWrap: true,\n  textOverflow: true,\n  textTransform: true,\n  whiteSpace: true,\n  textDecoration: {\n    property: 'textDecorationLine'\n  },\n  txtDecor: {\n    property: 'textDecorationLine'\n  },\n  textDecorationLine: true\n};\nvar extraProps = {\n  outline: true,\n  outlineWidth: true,\n  outlineColor: true,\n  outlineStyle: true,\n  shadow: {\n    scale: 'shadows'\n  },\n  cursor: true,\n  overflow: true,\n  userSelect: {\n    property: 'userSelect'\n  }\n};\nexport var propConfig = _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, color), space), layout), flexbox), border), position), typography), background), extraProps);\nvar convertStringNumberToNumber = function convertStringNumberToNumber(key, value) {\n  if (typeof value === 'string' && key !== 'fontWeight' && value && !isNaN(Number(value))) {\n    return parseFloat(value);\n  }\n  return value;\n};\nvar getRNKeyAndStyleValue = function getRNKeyAndStyleValue(_ref) {\n  var config = _ref.config,\n    value = _ref.value,\n    key = _ref.key,\n    theme = _ref.theme,\n    styledSystemProps = _ref.styledSystemProps,\n    currentBreakpoint = _ref.currentBreakpoint,\n    platform = _ref.platform;\n  var style = {};\n  if (config === true) {\n    style = _objectSpread(_objectSpread({}, style), {}, _defineProperty({}, key, convertStringNumberToNumber(key, value)));\n  } else if (config) {\n    var property = config.property,\n      scale = config.scale,\n      properties = config.properties,\n      transformer = config.transformer;\n    var val = value;\n    if (transformer) {\n      val = transformer(val, theme[scale], theme, styledSystemProps.fontSize);\n    } else {\n      val = get(theme[scale], value, value);\n    }\n    if (typeof val === 'string') {\n      if (val.endsWith('px')) {\n        val = parseFloat(val);\n      } else if (val.endsWith('em') && platform !== 'web') {\n        var fontSize = resolveValueWithBreakpoint(styledSystemProps.fontSize, theme.breakpoints, currentBreakpoint, key);\n        val = parseFloat(val) * parseFloat(get(theme.fontSizes, fontSize, fontSize));\n      }\n    }\n    val = convertStringNumberToNumber(key, val);\n    if (properties) {\n      properties.forEach(function (property) {\n        style = _objectSpread(_objectSpread({}, style), {}, _defineProperty({}, property, val));\n      });\n    } else if (property) {\n      style = _objectSpread(_objectSpread({}, style), {}, _defineProperty({}, property, val));\n    } else {\n      style = _objectSpread(_objectSpread({}, style), val);\n    }\n  }\n  return style;\n};\nexport var getStyleAndFilteredProps = function getStyleAndFilteredProps(_ref2) {\n  var theme = _ref2.theme,\n    currentBreakpoint = _ref2.currentBreakpoint,\n    getResponsiveStyles = _ref2.getResponsiveStyles,\n    styledSystemProps = _ref2.styledSystemProps,\n    platform = _ref2.platform;\n  var styleFromProps = {};\n  var restDefaultProps = {};\n  var unResolvedProps = {};\n  var dataSet = {};\n  var responsiveStyles = null;\n  var orderedBreakPoints = Object.entries(theme.breakpoints).sort(function (a, b) {\n    return a[1] - b[1];\n  });\n  var _loop = function _loop(key) {\n    var rawValue = styledSystemProps[key];\n    var config = propConfig[key];\n    if (!getResponsiveStyles && hasValidBreakpointFormat(rawValue, theme.breakpoints)) {\n      unResolvedProps[key] = rawValue;\n    }\n    if (hasValidBreakpointFormat(rawValue, theme.breakpoints)) {\n      if (!responsiveStyles) responsiveStyles = {};\n      var value = rawValue;\n      if (Array.isArray(value)) {\n        value.forEach(function (v, i) {\n          if (!responsiveStyles[orderedBreakPoints[i][0]]) {\n            responsiveStyles[orderedBreakPoints[i][0]] = [];\n          }\n          var newStyle = getRNKeyAndStyleValue({\n            config: config,\n            value: v,\n            key: key,\n            styledSystemProps: styledSystemProps,\n            theme: theme,\n            currentBreakpoint: currentBreakpoint,\n            platform: platform\n          });\n          if (!isEmptyObj(newStyle)) {\n            responsiveStyles[orderedBreakPoints[i][0]].push(newStyle);\n          }\n        });\n      } else {\n        for (var k in value) {\n          var newStyle = getRNKeyAndStyleValue({\n            config: config,\n            value: value[k],\n            key: key,\n            styledSystemProps: styledSystemProps,\n            theme: theme,\n            currentBreakpoint: currentBreakpoint,\n            platform: platform\n          });\n          if (!responsiveStyles[k]) {\n            responsiveStyles[k] = [];\n          }\n          if (!isEmptyObj(newStyle)) {\n            responsiveStyles[k].push(newStyle);\n          }\n        }\n      }\n    } else {\n      var _value = rawValue;\n      if (key === 'size' || styledSystemProps !== null && styledSystemProps !== void 0 && (_styledSystemProps$ex = styledSystemProps.extraProp) !== null && _styledSystemProps$ex !== void 0 && _styledSystemProps$ex.endsWith('.Icon') && key === 'color') {\n        restDefaultProps = _objectSpread(_objectSpread({}, restDefaultProps), {}, _defineProperty({}, key, _value));\n      } else {\n        var _newStyle = getRNKeyAndStyleValue({\n          config: config,\n          value: _value,\n          key: key,\n          styledSystemProps: styledSystemProps,\n          theme: theme,\n          currentBreakpoint: currentBreakpoint,\n          platform: platform\n        });\n        if (isEmptyObj(_newStyle) && !key.startsWith('_') && key !== 'extraProp' && key !== 'colorScheme' && key !== 'variants' && key !== 'sizes' && key !== 'variant') {\n          restDefaultProps = _objectSpread(_objectSpread({}, restDefaultProps), {}, _defineProperty({}, key, _value));\n        }\n        styleFromProps = _objectSpread(_objectSpread({}, styleFromProps), _newStyle);\n      }\n    }\n  };\n  for (var key in styledSystemProps) {\n    var _styledSystemProps$ex;\n    _loop(key);\n  }\n  if (responsiveStyles) {\n    if (getResponsiveStyles) {\n      var query = {\n        query: []\n      };\n      orderedBreakPoints.forEach(function (o) {\n        var key = o[0];\n        if (key === 'base') {\n          if (responsiveStyles) query.initial = responsiveStyles.base;\n        } else {\n          if (responsiveStyles) if (key in responsiveStyles) {\n            if (responsiveStyles[key].length > 0) {\n              var _query$query;\n              query === null || query === void 0 ? void 0 : (_query$query = query.query) === null || _query$query === void 0 ? void 0 : _query$query.push({\n                minWidth: o[1],\n                style: responsiveStyles[key]\n              });\n            }\n          }\n        }\n      });\n      var _getResponsiveStyles = getResponsiveStyles(query),\n        newDataSet = _getResponsiveStyles.dataSet,\n        styleFromQuery = _getResponsiveStyles.styleFromQuery;\n      dataSet = _objectSpread(_objectSpread({}, dataSet), newDataSet);\n      styleFromProps = _objectSpread(_objectSpread({}, styleFromProps), styleFromQuery);\n    } else {}\n  }\n  return {\n    styleSheet: {},\n    styleFromProps: styleFromProps,\n    restDefaultProps: restDefaultProps,\n    dataSet: dataSet,\n    unResolvedProps: unResolvedProps\n  };\n};","map":{"version":3,"sources":["styled-system.ts"],"names":["get","resolveValueWithBreakpoint","hasValidBreakpointFormat","transparentize","isEmptyObj","isNumber","n","isNaN","getColor","rawValue","scale","theme","alphaMatched","match","colorMatched","color","alphaValue","split","alphaFromToken","opacity","alpha","parseFloat","newColor","getMargin","convertStringNumberToNumber","isNegative","absolute","Math","abs","value","layout","width","property","w","height","h","minWidth","minW","minHeight","minH","maxWidth","maxW","maxHeight","maxH","size","properties","boxSize","overflow","overflowX","overflowY","display","verticalAlign","textAlign","flexbox","alignItems","alignContent","justifyItems","justifyContent","flexWrap","flexDirection","flexDir","flex","flexGrow","flexShrink","flexBasis","justifySelf","alignSelf","order","position","zIndex","top","right","bottom","left","transformer","tintColor","backgroundColor","bg","bgColor","background","textDecorationColor","border","borderWidth","borderStyle","borderColor","borderRadius","borderTop","borderTopRadius","borderLeftRadius","borderRightRadius","borderTopLeftRadius","borderTopRightRadius","borderRight","borderBottom","borderBottomLeftRadius","borderBottomRightRadius","borderLeft","borderX","borderY","borderTopWidth","borderTopColor","borderTopStyle","borderBottomWidth","borderBottomColor","borderBottomStyle","borderLeftWidth","borderLeftColor","borderLeftStyle","borderRightWidth","borderRightColor","borderRightStyle","rounded","roundedTopLeft","roundedTopRight","roundedBottomLeft","roundedBottomRight","roundedTop","borderBottomRadius","roundedBottom","roundedLeft","roundedRight","backgroundSize","backgroundPosition","backgroundRepeat","backgroundAttachment","backgroundBlendMode","bgImage","bgImg","bgBlendMode","bgSize","bgPosition","bgPos","bgRepeat","bgAttachment","space","margin","m","marginTop","mt","marginRight","mr","marginBottom","mb","marginLeft","ml","marginX","mx","marginY","my","padding","p","paddingTop","pt","paddingRight","pr","paddingBottom","pb","paddingLeft","pl","paddingX","px","paddingY","py","gap","typography","fontFamily","val","hasOwnProperty","toString","undefined","fontSize","fontWeight","lineHeight","letterSpacing","fontStyle","wordBreak","overflowWrap","textOverflow","textTransform","whiteSpace","textDecoration","txtDecor","textDecorationLine","extraProps","outline","outlineWidth","outlineColor","outlineStyle","shadow","cursor","userSelect","propConfig","key","Number","getRNKeyAndStyleValue","config","styledSystemProps","currentBreakpoint","platform","style","endsWith","breakpoints","fontSizes","forEach","getStyleAndFilteredProps","getResponsiveStyles","styleFromProps","restDefaultProps","unResolvedProps","dataSet","responsiveStyles","orderedBreakPoints","entries","sort","a","b","Array","isArray","v","i","newStyle","push","k","extraProp","startsWith","query","o","initial","base","length","newDataSet","styleFromQuery","styleSheet"],"mappings":"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","sourcesContent":["import get from 'lodash.get';\nimport { resolveValueWithBreakpoint } from '../hooks/useThemeProps/resolveValueWithBreakpoint';\nimport { hasValidBreakpointFormat, transparentize } from './tools';\n// import type { ITheme } from '.';\n// import type { UseResponsiveQueryParams } from '../utils/useResponsiveQuery';\nimport { isEmptyObj } from '../utils/isEmptyObj';\n\nconst isNumber = (n: any) => typeof n === 'number' && !isNaN(n);\n\nexport const getColor = (rawValue: any, scale: any, theme: any) => {\n  const alphaMatched =\n    typeof rawValue === 'string' ? rawValue?.match(/:alpha\\.\\d\\d?\\d?/) : false;\n\n  if (alphaMatched) {\n    const colorMatched = rawValue?.match(/^.*?(?=:alpha)/);\n    const color = colorMatched ? colorMatched[0] : colorMatched;\n    const alphaValue = alphaMatched[0].split('.')[1];\n    const alphaFromToken = get(theme.opacity, alphaValue, alphaValue);\n    const alpha = alphaFromToken ? parseFloat(alphaFromToken) : 1;\n    const newColor = transparentize(color, alpha)(theme);\n    return newColor;\n  } else {\n    return get(scale, rawValue, rawValue);\n  }\n};\n\n// To handle negative margins\nconst getMargin = (n: any, scale: any) => {\n  n = convertStringNumberToNumber('margin', n);\n  if (!isNumber(n)) {\n    return get(scale, n, n);\n  }\n\n  const isNegative = n < 0;\n  const absolute = Math.abs(n);\n  const value = get(scale, absolute, absolute);\n  if (!isNumber(value)) {\n    return isNegative ? '-' + value : value;\n  }\n  return value * (isNegative ? -1 : 1);\n};\n\nexport const layout = {\n  width: {\n    property: 'width',\n    scale: 'sizes',\n  },\n  w: {\n    property: 'width',\n    scale: 'sizes',\n  },\n  height: {\n    property: 'height',\n    scale: 'sizes',\n  },\n  h: {\n    property: 'height',\n    scale: 'sizes',\n  },\n  minWidth: {\n    property: 'minWidth',\n    scale: 'sizes',\n  },\n  minW: {\n    property: 'minWidth',\n    scale: 'sizes',\n  },\n  minHeight: {\n    property: 'minHeight',\n    scale: 'sizes',\n  },\n  minH: {\n    property: 'minHeight',\n    scale: 'sizes',\n  },\n  maxWidth: {\n    property: 'maxWidth',\n    scale: 'sizes',\n  },\n  maxW: {\n    property: 'maxWidth',\n    scale: 'sizes',\n  },\n  maxHeight: {\n    property: 'maxHeight',\n    scale: 'sizes',\n  },\n  maxH: {\n    property: 'maxHeight',\n    scale: 'sizes',\n  },\n  size: {\n    properties: ['width', 'height'],\n    scale: 'sizes',\n  },\n  boxSize: {\n    properties: ['width', 'height'],\n    scale: 'sizes',\n  },\n  overflow: true,\n  overflowX: true,\n  overflowY: true,\n  display: true,\n  verticalAlign: true,\n  textAlign: true,\n} as const;\n\nexport const flexbox = {\n  alignItems: true,\n  alignContent: true,\n  justifyItems: true,\n  justifyContent: true,\n  flexWrap: true,\n  flexDirection: true,\n  flexDir: {\n    property: 'flexDirection',\n  },\n  // item\n  flex: true,\n  flexGrow: true,\n  flexShrink: true,\n  flexBasis: true,\n  justifySelf: true,\n  alignSelf: true,\n  order: true,\n} as const;\n\nexport const position = {\n  position: true,\n  zIndex: {\n    property: 'zIndex',\n  },\n  top: {\n    property: 'top',\n    scale: 'space',\n  },\n  right: {\n    property: 'right',\n    scale: 'space',\n  },\n  bottom: {\n    property: 'bottom',\n    scale: 'space',\n  },\n  left: {\n    property: 'left',\n    scale: 'space',\n  },\n} as const;\n\nexport const color = {\n  color: {\n    property: 'color',\n    scale: 'colors',\n    transformer: getColor,\n  },\n  tintColor: {\n    property: 'tintColor',\n    scale: 'colors',\n    transformer: getColor,\n  },\n  backgroundColor: {\n    property: 'backgroundColor',\n    scale: 'colors',\n    transformer: getColor,\n  },\n  opacity: {\n    property: 'opacity',\n    scale: 'opacity',\n  },\n  bg: {\n    property: 'backgroundColor',\n    scale: 'colors',\n    transformer: getColor,\n  },\n  bgColor: {\n    property: 'backgroundColor',\n    scale: 'colors',\n    transformer: getColor,\n  },\n  background: {\n    property: 'backgroundColor',\n    scale: 'colors',\n    transformer: getColor,\n  },\n  textDecorationColor: {\n    property: 'textDecorationColor',\n    scale: 'colors',\n    transformer: getColor,\n  },\n} as const;\n\nexport const border = {\n  borderWidth: {\n    property: 'borderWidth',\n    scale: 'borderWidths',\n  },\n  borderStyle: {\n    property: 'borderStyle',\n    scale: 'borderStyles',\n  },\n  borderColor: {\n    property: 'borderColor',\n    scale: 'colors',\n    transformer: getColor,\n  },\n  borderRadius: {\n    property: 'borderRadius',\n    scale: 'radii',\n  },\n  borderTop: {\n    property: 'borderTop',\n    scale: 'borders',\n  },\n  borderTopRadius: {\n    properties: ['borderTopLeftRadius', 'borderTopRightRadius'],\n    scale: 'radii',\n  },\n  borderLeftRadius: {\n    properties: ['borderTopLeftRadius', 'borderBottomLeftRadius'],\n    scale: 'radii',\n  },\n  borderRightRadius: {\n    properties: ['borderTopRightRadius', 'borderBottomRightRadius'],\n    scale: 'radii',\n  },\n  borderTopLeftRadius: {\n    property: 'borderTopLeftRadius',\n    scale: 'radii',\n  },\n  borderTopRightRadius: {\n    property: 'borderTopRightRadius',\n    scale: 'radii',\n  },\n  borderRight: {\n    property: 'borderRight',\n    scale: 'borders',\n  },\n  borderBottom: {\n    property: 'borderBottom',\n    scale: 'borders',\n  },\n  borderBottomLeftRadius: {\n    property: 'borderBottomLeftRadius',\n    scale: 'radii',\n  },\n  borderBottomRightRadius: {\n    property: 'borderBottomRightRadius',\n    scale: 'radii',\n  },\n  borderLeft: {\n    property: 'borderLeft',\n    scale: 'borders',\n  },\n  borderX: {\n    properties: ['borderLeft', 'borderRight'],\n    scale: 'borders',\n  },\n  borderY: {\n    properties: ['borderTop', 'borderBottom'],\n    scale: 'borders',\n  },\n  borderTopWidth: {\n    property: 'borderTopWidth',\n    scale: 'borderWidths',\n  },\n  borderTopColor: {\n    property: 'borderTopColor',\n    scale: 'colors',\n    transformer: getColor,\n  },\n  borderTopStyle: {\n    property: 'borderTopStyle',\n    scale: 'borderStyles',\n  },\n  borderBottomWidth: {\n    property: 'borderBottomWidth',\n    scale: 'borderWidths',\n  },\n  borderBottomColor: {\n    property: 'borderBottomColor',\n    scale: 'colors',\n    transformer: getColor,\n  },\n  borderBottomStyle: {\n    property: 'borderBottomStyle',\n    scale: 'borderStyles',\n  },\n  borderLeftWidth: {\n    property: 'borderLeftWidth',\n    scale: 'borderWidths',\n  },\n  borderLeftColor: {\n    property: 'borderLeftColor',\n    scale: 'colors',\n    transformer: getColor,\n  },\n  borderLeftStyle: {\n    property: 'borderLeftStyle',\n    scale: 'borderStyles',\n  },\n  borderRightWidth: {\n    property: 'borderRightWidth',\n    scale: 'borderWidths',\n  },\n  borderRightColor: {\n    property: 'borderRightColor',\n    scale: 'colors',\n    transformer: getColor,\n  },\n  borderRightStyle: {\n    property: 'borderRightStyle',\n    scale: 'borderStyles',\n  },\n  rounded: {\n    property: 'borderRadius',\n    scale: 'radii',\n  },\n\n  roundedTopLeft: {\n    property: 'borderTopLeftRadius',\n    scale: 'radii',\n  },\n\n  roundedTopRight: {\n    property: 'borderTopRightRadius',\n    scale: 'radii',\n  },\n\n  roundedBottomLeft: {\n    property: 'borderBottomLeftRadius',\n    scale: 'radii',\n  },\n\n  roundedBottomRight: {\n    property: 'borderBottomRightRadius',\n    scale: 'radii',\n  },\n\n  roundedTop: {\n    properties: ['borderTopLeftRadius', 'borderTopRightRadius'],\n    scale: 'radii',\n  },\n  borderBottomRadius: {\n    properties: ['borderBottomLeftRadius', 'borderBottomRightRadius'],\n    scale: 'radii',\n  },\n  roundedBottom: {\n    properties: ['borderBottomLeftRadius', 'borderBottomRightRadius'],\n    scale: 'radii',\n  },\n\n  roundedLeft: {\n    properties: ['borderTopLeftRadius', 'borderBottomLeftRadius'],\n    scale: 'radii',\n  },\n\n  roundedRight: {\n    properties: ['borderTopRightRadius', 'borderBottomRightRadius'],\n    scale: 'radii',\n  },\n} as const;\n\nexport const background = {\n  backgroundSize: true,\n  backgroundPosition: true,\n  backgroundRepeat: true,\n  backgroundAttachment: true,\n  backgroundBlendMode: true,\n  bgImage: {\n    property: 'backgroundImage',\n  },\n  bgImg: {\n    property: 'backgroundImage',\n  },\n  bgBlendMode: {\n    property: 'backgroundBlendMode',\n  },\n  bgSize: {\n    property: 'backgroundSize',\n  },\n  bgPosition: {\n    property: 'backgroundPosition',\n  },\n  bgPos: {\n    property: 'backgroundPosition',\n  },\n  bgRepeat: {\n    property: 'backgroundRepeat',\n  },\n  bgAttachment: {\n    property: 'backgroundAttachment',\n  },\n} as const;\n\nexport const space = {\n  margin: {\n    property: 'margin',\n    scale: 'space',\n    transformer: getMargin,\n  },\n  m: {\n    property: 'margin',\n    scale: 'space',\n    transformer: getMargin,\n  },\n  marginTop: {\n    property: 'marginTop',\n    scale: 'space',\n    transformer: getMargin,\n  },\n  mt: {\n    property: 'marginTop',\n    scale: 'space',\n    transformer: getMargin,\n  },\n  marginRight: {\n    property: 'marginRight',\n    scale: 'space',\n    transformer: getMargin,\n  },\n  mr: {\n    property: 'marginRight',\n    scale: 'space',\n    transformer: getMargin,\n  },\n  marginBottom: {\n    property: 'marginBottom',\n    scale: 'space',\n    transformer: getMargin,\n  },\n  mb: {\n    property: 'marginBottom',\n    scale: 'space',\n    transformer: getMargin,\n  },\n  marginLeft: {\n    property: 'marginLeft',\n    scale: 'space',\n    transformer: getMargin,\n  },\n  ml: {\n    property: 'marginLeft',\n    scale: 'space',\n    transformer: getMargin,\n  },\n  marginX: {\n    properties: ['marginLeft', 'marginRight'],\n    scale: 'space',\n    transformer: getMargin,\n  },\n  mx: {\n    properties: ['marginLeft', 'marginRight'],\n    scale: 'space',\n    transformer: getMargin,\n  },\n  marginY: {\n    properties: ['marginTop', 'marginBottom'],\n    scale: 'space',\n    transformer: getMargin,\n  },\n  my: {\n    properties: ['marginTop', 'marginBottom'],\n    scale: 'space',\n    transformer: getMargin,\n  },\n\n  padding: {\n    property: 'padding',\n    scale: 'space',\n  },\n  p: {\n    property: 'padding',\n    scale: 'space',\n  },\n  paddingTop: {\n    property: 'paddingTop',\n    scale: 'space',\n  },\n  pt: {\n    property: 'paddingTop',\n    scale: 'space',\n  },\n  paddingRight: {\n    property: 'paddingRight',\n    scale: 'space',\n  },\n  pr: {\n    property: 'paddingRight',\n    scale: 'space',\n  },\n  paddingBottom: {\n    property: 'paddingBottom',\n    scale: 'space',\n  },\n  pb: {\n    property: 'paddingBottom',\n    scale: 'space',\n  },\n  paddingLeft: {\n    property: 'paddingLeft',\n    scale: 'space',\n  },\n  pl: {\n    property: 'paddingLeft',\n    scale: 'space',\n  },\n  paddingX: {\n    properties: ['paddingLeft', 'paddingRight'],\n    scale: 'space',\n  },\n  px: {\n    properties: ['paddingLeft', 'paddingRight'],\n    scale: 'space',\n  },\n  paddingY: {\n    properties: ['paddingTop', 'paddingBottom'],\n    scale: 'space',\n  },\n  py: {\n    properties: ['paddingTop', 'paddingBottom'],\n    scale: 'space',\n  },\n  gap: {\n    property: 'gap',\n    scale: 'space',\n  },\n} as const;\n\nexport const typography = {\n  fontFamily: {\n    property: 'fontFamily',\n    scale: 'fonts',\n    transformer: (val: any, scale: any) => {\n      let value: any;\n      if (scale.hasOwnProperty(val)) {\n        value = get(scale, val);\n      } else {\n        value = get(scale, val, val);\n      }\n      return value ? value.toString() : undefined;\n    },\n  },\n  fontSize: {\n    property: 'fontSize',\n    scale: 'fontSizes',\n  },\n  fontWeight: {\n    property: 'fontWeight',\n    scale: 'fontWeights',\n    transformer: (val: any, scale: any) => {\n      return val ? get(scale, val, val).toString() : val;\n    },\n  },\n  lineHeight: {\n    property: 'lineHeight',\n    scale: 'lineHeights',\n  },\n  letterSpacing: {\n    property: 'letterSpacing',\n    scale: 'letterSpacings',\n  },\n  textAlign: true,\n  fontStyle: true,\n  wordBreak: true,\n  overflowWrap: true,\n  textOverflow: true,\n  textTransform: true,\n  whiteSpace: true,\n  textDecoration: { property: 'textDecorationLine' },\n  txtDecor: { property: 'textDecorationLine' },\n  textDecorationLine: true,\n} as const;\n\nconst extraProps = {\n  outline: true,\n  outlineWidth: true,\n  outlineColor: true,\n  outlineStyle: true,\n  shadow: {\n    scale: 'shadows',\n  },\n  cursor: true,\n  overflow: true,\n  userSelect: { property: 'userSelect' },\n} as const;\n\nexport const propConfig = {\n  ...color,\n  ...space,\n  ...layout,\n  ...flexbox,\n  ...border,\n  ...position,\n  ...typography,\n  ...background,\n  ...extraProps,\n} as const;\n\n// For backward compatibility with 3.0 of props like non token string numbers `<Box mt={\"39\"} />` => used to get applied as 39px. RN expects fontWeight to be string and crashes with numbers\n// https://reactnative.dev/docs/text-style-props#fontweight\nconst convertStringNumberToNumber = (key: string, value: string) => {\n  if (\n    typeof value === 'string' &&\n    key !== 'fontWeight' &&\n    value &&\n    !isNaN(Number(value))\n  ) {\n    return parseFloat(value);\n  }\n\n  return value;\n};\n\nconst getRNKeyAndStyleValue = ({\n  config,\n  value,\n  key,\n  theme,\n  styledSystemProps,\n  currentBreakpoint,\n  platform,\n}: any) => {\n  let style: any = {};\n  if (config === true) {\n    style = {\n      ...style,\n      [key]: convertStringNumberToNumber(key, value),\n    };\n  } else if (config) {\n    //@ts-ignore\n    const { property, scale, properties, transformer } = config;\n    let val = value;\n    // console.log('zzzz style system props', theme, scale, value, transformer);\n    if (transformer) {\n      val = transformer(val, theme[scale], theme, styledSystemProps.fontSize);\n    } else {\n      // If a token is not found in the theme\n      val = get(theme[scale], value, value);\n    }\n\n    if (typeof val === 'string') {\n      if (val.endsWith('px')) {\n        val = parseFloat(val);\n      } else if (val.endsWith('em') && platform !== 'web') {\n        const fontSize = resolveValueWithBreakpoint(\n          styledSystemProps.fontSize,\n          theme.breakpoints,\n          currentBreakpoint,\n          key\n        );\n        val =\n          parseFloat(val) *\n          parseFloat(get(theme.fontSizes, fontSize, fontSize));\n      }\n    }\n\n    val = convertStringNumberToNumber(key, val);\n\n    if (properties) {\n      //@ts-ignore\n      properties.forEach((property) => {\n        style = {\n          ...style,\n          [property]: val,\n        };\n      });\n    } else if (property) {\n      style = {\n        ...style,\n        [property]: val,\n      };\n    } else {\n      style = {\n        ...style,\n        ...val,\n      };\n    }\n  }\n\n  return style;\n};\n\nexport const getStyleAndFilteredProps = ({\n  theme,\n  currentBreakpoint,\n  getResponsiveStyles,\n  styledSystemProps,\n  platform,\n}: any) => {\n  let styleFromProps: any = {};\n  let restDefaultProps: any = {};\n  const unResolvedProps: any = {};\n  let dataSet: any = {};\n  let responsiveStyles: null | Record<\n    keyof typeof theme.breakpoints,\n    Array<any>\n  > = null;\n\n  const orderedBreakPoints = Object.entries(\n    //@ts-ignore\n    theme.breakpoints as ITheme['breakpoints']\n    //@ts-ignore\n  ).sort((a, b) => a[1] - b[1]);\n\n  for (const key in styledSystemProps) {\n    const rawValue = styledSystemProps[key];\n\n    const config = propConfig[key as keyof typeof propConfig];\n\n    // TODO: refactor\n    // Start: For edge cases\n    if (\n      !getResponsiveStyles &&\n      hasValidBreakpointFormat(rawValue, theme.breakpoints)\n    ) {\n      unResolvedProps[key] = rawValue;\n    }\n\n    // TODO: refactor space prop for Stack Component\n    // if (key === 'space') {\n    //   unResolvedProps[key] = rawValue;\n    // }\n    // End: For edge cases\n\n    if (hasValidBreakpointFormat(rawValue, theme.breakpoints)) {\n      if (!responsiveStyles) responsiveStyles = {};\n\n      const value = rawValue;\n      if (Array.isArray(value)) {\n        value.forEach((v, i) => {\n          //@ts-ignore\n          if (!responsiveStyles[orderedBreakPoints[i][0]]) {\n            //@ts-ignore\n            responsiveStyles[orderedBreakPoints[i][0]] = [];\n          }\n          const newStyle = getRNKeyAndStyleValue({\n            config,\n            value: v,\n            key,\n            styledSystemProps,\n            theme,\n            currentBreakpoint,\n            platform,\n          });\n\n          if (!isEmptyObj(newStyle)) {\n            //@ts-ignore\n            responsiveStyles[orderedBreakPoints[i][0]].push(newStyle);\n          }\n        });\n      } else {\n        // console.log('hello 111222', key, value);\n        for (const k in value) {\n          const newStyle = getRNKeyAndStyleValue({\n            config,\n            value: value[k],\n            key,\n            styledSystemProps,\n            theme,\n            currentBreakpoint,\n            platform,\n          });\n          if (!responsiveStyles[k]) {\n            responsiveStyles[k] = [];\n          }\n          if (!isEmptyObj(newStyle)) {\n            responsiveStyles[k].push(newStyle);\n          }\n        }\n        // console.log('hello 111222', key, value, responsiveStyles);\n      }\n    } else {\n      const value = rawValue;\n\n      // if (styledSystemProps?.extraProp?.endsWith('Icon')) {\n      //   console.log(styledSystemProps?.extraProp, 'hello flatten here22');\n      // }\n\n      //TODO: refactor\n      if (\n        key === 'size' ||\n        (styledSystemProps?.extraProp?.endsWith('.Icon') && key === 'color')\n      ) {\n        restDefaultProps = {\n          ...restDefaultProps,\n          [key]: value,\n        };\n      } else {\n        const newStyle = getRNKeyAndStyleValue({\n          config,\n          value,\n          key,\n          styledSystemProps,\n          theme,\n          currentBreakpoint,\n          platform,\n        });\n\n        // TODO: refactor\n        if (\n          isEmptyObj(newStyle) &&\n          !key.startsWith('_') &&\n          key !== 'extraProp' &&\n          key !== 'colorScheme' &&\n          // key !== 'style' &&\n          key !== 'variants' &&\n          key !== 'sizes' &&\n          key !== 'variant'\n        ) {\n          restDefaultProps = {\n            ...restDefaultProps,\n            [key]: value,\n          };\n        }\n\n        styleFromProps = {\n          ...styleFromProps,\n          ...newStyle,\n        };\n      }\n    }\n  }\n\n  if (responsiveStyles) {\n    if (getResponsiveStyles) {\n      const query: any = { query: [] };\n      orderedBreakPoints.forEach((o) => {\n        const key = o[0];\n        if (key === 'base') {\n          if (responsiveStyles) query.initial = responsiveStyles.base;\n        } else {\n          if (responsiveStyles)\n            if (key in responsiveStyles) {\n              if (responsiveStyles[key].length > 0) {\n                query?.query?.push({\n                  //@ts-ignore\n                  minWidth: o[1],\n                  style: responsiveStyles[key],\n                });\n              }\n            }\n        }\n      });\n      // console.log('hello responsive', orderedBreakPoints, responsiveStyles);\n\n      const { dataSet: newDataSet, styleFromQuery } = getResponsiveStyles(\n        query\n      );\n      dataSet = { ...dataSet, ...newDataSet };\n\n      styleFromProps = { ...styleFromProps, ...styleFromQuery };\n    } else {\n    }\n  }\n\n  // if (process.env.NODE_ENV === 'development' && debug) {\n  //   /* eslint-disable-next-line */\n  //   console.log('style ', debug + ' :: ', {\n  //     styleFromProps,\n  //     style,\n  //     styledSystemProps,\n  //   });\n  // }\n\n  return {\n    styleSheet: {},\n    styleFromProps,\n    restDefaultProps,\n    dataSet,\n    unResolvedProps,\n  };\n};\n\nexport type StyledPropConfig = typeof propConfig;\n"]},"metadata":{},"sourceType":"module"}